/*
目前存在的問題:
1. 無法描述清楚這兩個類之間的繼承關系。
2. 存在着重複代碼。
面向對象的三大特征:
1. 封裝
2. 繼承
3. 多态.
繼承:繼承是通過關鍵字extends展現的。
繼承的格式:
class 類名1 extends 類名2{
}
繼承要注意的事項:
1. 千萬不要為了減少重複代碼而去繼承,隻有真正存在着繼承關系的時候才去繼承。
2. 父類私有的成員不能被繼承。
3. 父類的構造函數不能被繼承。
4. 建立子類對象時預設會先調用父類無參的構造函數。
疑問: 為什麼要調用父類的構造方法啊?這樣子做的意義在那?
*/
//人類
class Person{
String name;
private int age;
public Person(String name){
this.name = name;
}
public Person(){
System.out.println("Person類的構造方法被調用了....");
}
public void eat(){
System.out.println(name+"在吃飯...");
}
}
//學生類
class Student extends Person { // Student 就稱作為Person類的子類, Person類就稱作為Student的父類(超類、基類)
int num; //學号
public Student(){
System.out.println("Student類的構造方法被調用了....");
}
public void study(){
System.out.println(name+"good good study , day day up");
}
}
class Demo7
{
public static void main(String[] args)
{
Student s = new Student();
/*
s.name = "狗娃";
System.out.println("名字:"+ s.name);
s.eat();
*/
}
}