继承:子类对象创建时,会先创建父类对象,然后在父类对象基础上,扩展子类特有的属性和方法。所以子类对象包含完整的父类对象,可以重用父类中定义的属性和方法。
⑴如果能够说出XXX是一种XX的时候,就可以使用继承关系;
⑵子类可以直接继承父类的属性和方法(暂时不考虑访问限制);
⑶继承关系可以一直往下延续;
⑷一个父类可以有多个子类,但是一个子类只能有一个父类 (单继承);
⑸注意,子类的属性,父类不能使用;
在Java中,一个类使用关键字 extends 继承其它类。关键字 extends 出现在类声明的类名后,extends 后面跟着的是要继承的类的名称。
例:public class xxx extends ccc {}。
子类构造方法的第一句应该书写为 super() ,表示调用父类的构造方法产生父类对象。如果子类构造方法没有调用 super(),虚拟机在运行时会自动调用 super()。当父类中没有定义无参构造方法,那么子类构造方法必须显示调用 super(1)。
访问修饰符:⑴public 该类或非该类都可以访问;
⑵private 只有该类内部访问;
例:private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
⑶protected 不同包的子类可以访问;
⑷default 只能在同一个包中访问。
方法重写:⑴方法重写发生在父类和子类之间,子类的方法方法名和父类相同,参数列表相同,返回类型相同;
⑵当调用方法时,优先调用子类重写的方法,如果子类没有重写父类方法,那么就调用调用父类中继承的方法。