PagingLinkObjects extends LinkObjects { @Override public boolean equals(Object o) { if (this == o) return true; if (!(o instanceof PagingLinkObjects) || !super.equals(o)) return false; PagingLinkObjects that = (PagingLinkObjects) o; return Objects.equals(getFirst(), that.getFirst()) && Objects.equals(getPrevious(), that.getPrevious()) && Objects.equals(getNext(), that.getNext()) && Objects.equals(getLast(), that.getLast()); }  Self getFirst(); void setFirst(Self first); Self getPrevious(); void setPrevious(Self previous); Self getNext(); void setNext(Self next); Self getLast(); void setLast(Self last); @Override boolean equals(Object o); @Override int hashCode(); @Override boolean canEqual(Object o);  }
@Test public void testEquals() { EqualsVerifier.forClass(PagingLinkObjects.class) .withRedefinedSuperclass() .suppress(Warning.NONFINAL_FIELDS) .verify(); }