Java的继承

来源:互联网 发布:smtp.126.com端口 编辑:程序博客网 时间:2024/06/11 09:24



注意:

1. 继承:用extends  对于继承private是无效的
2.在Java中是特殊的,只能是单继承!!

继承中方法的重写
注意: 子类重写方法时,访问修饰符要使得该方法的可见性不低于父类中的方法!如父类的方法是 public 的,子类必须是 public,父类是 private,子类可以是 private, package 和 public。
Java中的继承初始化顺序
注意: 继承的初始化顺序   :父类对象->属性初始化->构造方法->子类对象->属性初始化->构造方法
Java中  final  的使用:
1.  final修饰的变量:要么在定义变量的时候初始化,或者就是在构造方法中初始化,而且只能初始化一次;
2. 使用final关键字做标识有最终的含义
3. final可以修饰类,方法,属性和变量
4. final可以修饰类,则该类不允许被继承
5. final可以修饰方法,则该方法不允许被覆盖(重写)
6. final可以修饰属性,则该类的属性不会进行隐式的初始化(类的初始化属性必须有值)或在构造方法中赋值(但只能选其一)
7. final可以修饰变量,则该变量的值只能赋一次值,则变为常量
Java中super的使用
Java中的object类
Object类是所有类的父类,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object类。
Object类中的方法,适合所有子类。
toString()方法
在Object类里面定义toString()方法的是返回的对象的哈希code码(对象地址字符串)
如果直接输出对象名,就会执行toString()方法。例如:System.out.println(实例化对象名);
可以通过重写toString()方法输出对象的属性。
public String toString() {
return "HelloWorld[name="+name+"]";
}
提示:1. Arrays.toString()将数组中的元素转换为字符串并连接起来
2. toString()返回对象的哈希code码()对象地址字符串
equals的使用方法
1.原本比较对象的引用是否指向同一块内存地址。

但一般情况下比较两个对象的值是否相同,所以要重写。

(equals返回值为布尔类型,可与if()结合使用)

2.source自动生成equals()方法

①.if (this == obj)//判断两个引用的值是否相同 ->判断引用的地址是否相同 ->相当于指向了同一对象
②if (obj == null)//另一对象的值是空值时没必要比较
③if (getClass() != obj.getClass())  //得到类对象,判断两个对象的类型是否相同

比较:
obj.getClass() 类对象:描述类的代码信息:有哪些属性、什么类型、变量、方法等,更关注类的代码信息
obj 类的对象: new一个类时得到的对象,更关注对象属性值/数据 信息


④if (age != other.age)//比较两对象属性值是否相同,相同则相等