public class Person { }
...
Person p = new Person();
p.toString(); // ???
Object
public class Person { }
...
Person p = new Person();
p.toString(); // ???
Object
.Object
.Object
getClass()
— vrátí název třídyequals
, hashCode
— bude probíráno později
clone()
— vytvoří identickou kopii objektu (deep copy)
toString()
— vrátí textovou reprezentaci objektuPerson p = new Person();
System.out.println(p);
// it simply does this:
System.out.println(p.toString());
String toString()
.public class Person {
public String toString() {
return "it works";
}
}
Person p = new Person();
System.out.println(p); // it works
toString()
Object
:getClass().getName() + '@' + Integer.toHexString(hashCode())
Person p = new Person();
System.out.println(p); // Person@14ae5a5
@Override
— motivacepublic class Person {
public String toStrng() {
return "not working";
}
}
Person p = new Person();
System.out.println(p); // Person@14ae5a5
@Override
@Override
public String toString() {
return "it works again";
}
@Override
, když přepisujete metodu./