您的位置:首页 > 编程语言 > Java开发

java继承复习要点总结

2011-04-12 17:31 239 查看
1,java中是单继承,一个子类只能有一个父类,并且使用extends关键字标明继承的父类( eg: Chlid extends Father)

2,子类继承父类中的所有属性和方法(构造方法除外):说明几点

1, 如果父类中的属性和方法为 private ,子类继承但是不能使用

2, 子类集成父类中的方法,可以重写,但是重写的方法不能比被重写的方法有更严格的访问权限

eg:父类中一个 private f(){} 方法,子类在重写的时候访问权限只能为 private 不能

为public , 就是不能比private 访问权限更高

3, super 关键字 是子类中调用父类中的方法和属性。this 指的是当前对象, super是指的是子类中父类对象的引用

eg: 子类中的可以 通过 super.父类中的方法或属性 调用父类中方法或属性;

4,继承中的构造方法,

1,子类中的构造方法 必须 调用父类中的构造方法;

2,子类中的构造方法调用父类的构造方法用super() 来进行调用,并且必须在子类构造方法中的第一句

3,如果子类中没有显示的调用父类中的构造方法,则子类构造方法调用父类无参的构造方法。

4,如果子类中没有显示的调用父类中的构造方法,而且父类中没有无参的构造方法,则编译错误;

public class Animal {  //父类
private String name;
private int age;

Animal(){
name="animal";
age=20;

}
Animal(String name){
this.name=name;
age=20;
}
Animal(String name ,int age){
this.age=age;
this.name=name;
}

private int f(){
return 555;
}

///////////////////////////////
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
/////////////////////////////////

}


public class Dog extends Animal{  //子类
private String address;

Dog(){
address ="china";

}
Dog(String address){
super("dog");
this.address=address;

}
Dog(int age,String name,String address){
super(name,age);
this.address=address;

}

/////////////////////////////
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
////////////////////////////
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: