一、java繼承的實現
擴展父類功能;使用extends關鍵字完成繼承;格式:class 子類 extends 父類{ 程序}
class Person2{
private String name;
private int age;
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;
}
}
class Student2 extends Person2{
private int score;
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
public void tell() {
System.out.println("姓名:"+getName()+" "+"年齡:"+getAge()+" "+"成績:"+getScore());
}
}
public class Demo4 {
public static void main(String[] args) {
Student2 stu=new Student2();
stu.setName("張三");
stu.setAge(30);
stu.setScore(99);
stu.tell();
}
}
二、繼承的限制
java只允許單繼承,子類不能直接訪問父類的私有成員,只能通過get,set方法調用
三、子類的實例化過程:在子類實例化之前,必須先調用父類的構造方法,之後調用子類的構造方法
四、java方法重寫和super關鍵字
1、在繼承中也存在着重寫的概念,其實就是子類定義了和父類同名的方法。
2、方法名稱相同,返回值類型相同,參數也同
3、重寫限制:被子類重寫的方法不能擁有比父類方法更嚴格的訪問權限
4、訪問權限:private<default<public;
例:
class A{
public void tell() {
System.out.println("我是父類");
}
}
class B extends A {
public void tell() {
super.tell();
System.out.println("我重寫了父類");
}
}
public class Demo5 {
public static void main(String[] args) {
B b=new B();
b.tell();
}
}
五、重寫與重載的區別