面向对象编程----继承_Object类用法_toString和equals方法_重写toString
Object类
Object类是所有java类的根基类
如果在类的声明中未使用extends关键字指明其基类,则默认基类为Object类。
Public class Person{
...
}
Public class Person extends Object{
...
}
重写:toString方法:
默认返回:包名+类名+@+哈希码(根据对象内存位置生成,唯一不重复!)
可以重用! 根据对象内存位置生成,唯一不重复!
打开API文档,开始熟悉!
Objext如果想看源码的话,鼠标放上去ctrl+点击
慢慢的学着,看源码
关于查看寄存结构的小技巧:
指针放到这个类上按住ctrl+t 这样就可以看到类型层次结构。
也可以指针放到这个类上点击右键,然后选择Open Type Hierarchy
方法的重写(override)
在子类中可以根据需要对从基类中继承来的方法进行重写。
重写方法必须和被重写方法具有相同方法名称、参数列表和返回类型。
重写方法不能使用比被重写方法更严格的访问权限。(由于多态)
package cn.bjsct.oop.testObject;
public class TestObject {
public static void main(String[] args) {
// 类对象是类层次结构的根,
// 每个类都有一个作为超类的对象。
// 所有对象,包括数组,实现这个类的方法。
Object obj = new Object();
Object obj2 = new Object();
// toString()默认返回:包名+类名+@+哈希码(根据对象内存位置生成,唯一不重复)
System.out.println(obj.toString());
System.out.println(obj2.toString());
System.out.println(obj==obj2);
// 讲到容器再说
System.out.println(obj.equals(obj2));
Moble m = new Moble();
System.out.println(m.toString());
}
}
package cn.bjsct.oop.testObject;
public class Moble {
// 在这里把toString()方法给重写了
public String toString() {
return "我是一部电话";
}
}
本文来自博客园,作者:神奇的梦,转载请注明原文链接:https://www.cnblogs.com/fantasticDream/p/16313499.html