java中创建对象的两种方式:
方式一:自定义类,然后通过自定义的类创建对象。
方式二:sun提供了很多的类给我使用,我们只需要认识这些类,我们就可以通过这些类创建对象了。
Object类:
Object类是所有类的终极父类。 任何一个类都继承了Object类。
Object类中常用的方法:
toString(); 返回该对象的字符串表示。 返回一个字符串用于描述该对象的。
equals(Object obj) 用于比较两个对象的内存地址,判断两个对象是否为同一个对象。
hashCode() 返回该对象的哈希码值(可以把哈希码就理解成是对象的内存地址)。
代码示例:
1 class Person{ 2 3 int id; 4 String name; 5 public Person(int id, String name) { 6 this.id = id; 7 this.name = name; 8 } 9 10 //通过重写toString方法来修改println打印对象的时候的格式 11 @Override 12 public String toString() { 13 return "编号:"+id+" 姓名:"+name; 14 } 15 16 //重写equals方法和hashCode方法来更改两个对象相等的条件 17 @Override 18 public boolean equals(Object obj) { 19 Person p = (Person)obj; 20 return this.id==p.id; 21 } 22 23 @Override 24 public int hashCode() { 25 return this.id; 26 } 27 } 28 29 30 public class ObjectDome { 31 32 public static void main(String[] args) { 33 //Object类是所有类的终极父类 34 Object o = new Object(); 35 //println和toString输出的结果一样,是因为在println方法中默认调用了toString()方法 36 System.out.println(o); 37 System.out.println(o.toString()); 38 39 //测试重写toString方法 40 Person p = new Person(110, "王五"); 41 System.out.println(p); 42 43 //重写equals方法和hashCode方法来更改两个对象相等的条件 44 Person p1 = new Person(110,"张三"); 45 System.out.println(p1); 46 Person p2 = new Person(110,"李四"); 47 System.out.println(p2); 48 System.out.println("p1 == p2 ?"+p1.equals(p2)); 49 } 50 }
java中的规范:一般我们重写了一个类的equals方法,我们都会重写它的hashCode方法。
java是开源的,所以查看源代码是最好的学习方式:
查看源代码的方式:
方式一: 按住ctrl键,单击你需要看的源代码.
方式二:把光标移动到你需要查看代码处按下F3.