继承 (Object、this、super)
分为Object 和 super super可以调用父类的方法
在Java里,所有的类都默认直接或间接继承 Object 类
继承的单词为 extends
子类可以继承父类的所有方法(公共的)
即: 子类 继承 父类 public class Student extends Hello
例如:
public class Hello{ public static void main(String[]args){ Study study = new Study(); student.say(); //会输出第二段的话,因为第三个是第二个的子类,继承了第二个的全部方法 System.our.println(study.money); //因为子类继承了父类的钱,所以输出子类的钱也和父类的一样 } }
public class Student{ public int money =1000; //给父类1000块钱 public void say(){ //在这里的say表示方法 System.out.println("说了一句话"); } }
public class Study extends Student{ }
super注意点
-
super调用父类的构造方法,必须在构造方法的第一个
-
super必须智能出现在子类的方法或者构造方法中
-
super 和 this 不能同时调用构造方法
-
this 是声明本类的方法 super 是调用父类的方法(只要父类的不是 private类)
super 与 this 的不同
代表对象不同: this: 调用本身这个对象 super:调用父类的应用
前提: this :没有继承也可以使用 super:只能在继承条件才可以使用
构造方法: this(); 本类的构造 super(); 父类的构造
方法重写
需要有继承关系,子类重写父类的方法
-
方法名必须相同
-
参数列表列表必须相同
-
修饰符:范围可以扩大,但是不能缩小 公共的 受保护的 默认的 私有的 public>Protected>Default>Private
-
抛出的异常;范围,可以被缩小,但不能扩大;
-
重写子类的方法必须和父类的一样,方法体不同
为什么需要重写
-
父类的功能子类不一定需要
-
重写快捷键 Alt+Insert ; 选中override;