equals和==的区别
(1)==在基本类型中用于比较变量的值,如果引用类型,比较的是两个引用变量是否指向同一个对象;
(2)equals重写Object中的equals方法,重写以后可以用于比较两个对象的内容是否一样。
Point p = new Point(5,6);
Point p2 = new Point(5,6);
//两个对象,是不同的对象
System.out.println(p == p2);
System.out.println(p.equals(p2));//true
Object
Object(顶级父类):
所有的类都有一个父类叫Obejct,默认的父类是Java.lang.Object,Object类型的引用变量可指向任何类型对象(向上造型);
Object常见方法:
toString()返回一个String类型,该方法的意义是讲当前对象转化为一个字符串,Object已经实现了该方法,返回的字符串是当前对象(句柄)引用,格式为:包名.类型@散列码,该字符串在实际开发中的意义不大,所以通常需要使用这个方法时需要重写。
//toString()方法是非常有用的调试工具(一般返回的是类中的成员变量的值),强烈建议自定义的对象重写toString()方法
Person p = new Person("测试",30);
System.out.println(p);//直接调用toString方法,在这里toString()可以省略。