继承(extends)
1继承
2语法
public class 子类 exends 父类{
}
例:public class Dog extends Pet{
}
3继承的特点
a.子类可以继承父类的非私有的属性和方法
b.不能继承构造方法
c.继承默认权限修饰符的方法和属性,
子类和父类必须在同一个包中。
4 super(父亲)
super.属性名//表示方法父类的属性
super.方法名(参数);//表示访问父亲的方法
super(参数);//表示方法名父亲的结构函数
注意:super()访问父类结构函数时,必需写在第一行
代码块会执行在构造函数之前
访问修饰符protected
可以修饰属性和方法
本类,同包,子类可以访问
访问修饰符总结
访问修饰符 本类 同包 子类 其他
private私有的 √
默认(friendly)√ √
protected √ √ √
public √ √ √ √
public class Pet {
private int age;
//昵称
private String name;
//健康
private int health;
//亲密
private int love;
public Pet(){
}
public Pet(String name){
this.name=name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getHealth() {
return health;
}
public void setHealth(int health) {
this.health = health;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public void print(){
System.out.println("宠物的自白:\n我的名字叫"+name+",健康值是:"+health+",和主人的亲密度是"+love);
}
public int getMaster() {
// TODO Auto-generated method stub
return 0;
}
}
public class Dog extends Pet {
//品种
private String strain;
public Dog(){
}
public Dog(String name,String strain){
super(name);
this.strain=strain;
}
public String getStrain() {
return strain;
}
public void setStrain(String strain) {
this.strain = strain;
}
}