JAVA(十一)java面向對象5-繼承

java面向對象5-繼承

繼承是面向對象最顯著的一個特性。繼承是從已有的類中派生出新的類,新的類能吸收已有類的數據屬性和行爲,並能擴展新的能力。 Java繼承是使用已存在的類的定義作爲基礎建立新類的技術,新類的定義可以增加新的數據或新的功能,也可以用父類的功能,但不能選擇性地繼承父類。這種技術使得複用以前的代碼非常容易,能夠大大縮短開發週期,降低開發費用。

繼承使用extends關鍵字實現

class Person {
    String name;
    int age;
    // 靜態變量(類變量)對象和對象之間的代碼重複使用靜態變量
    static String country = "CN";

    Person() {
    }

    void speak() {
        System.out.println(name + ":哈哈,我是人!!!");
    }

}

// 讓學生類和人類產生關係,發現學生is a 人,就可以使用繼承
class Student extends Person {

    Student() {
    }

    void study() {
        System.out.println("姓名:" + name + "年紀:" + age + ":好好學習");
    }
}

class Worker extends Person {

    void work() {
        System.out.println(name + ":好好工作,好好掙錢。");
    }

}

class Demo1 {

    public static void main(String[] args) {
        Student stu = new Student();
        stu.name = "jack";
        stu.age = 20;
        stu.study();
        stu.speak();
        System.out.println(stu.country);
        System.out.println(Student.country);

        Worker worker = new Worker();
        worker.name = "rose";
        System.out.println(worker.country);
        worker.work();
        worker.speak();

        System.out.println();
    }
}

總結:
子類並不能繼承父類中所有的成員
1.父類定義完整的成員 靜態成員,非靜態,構造方法。靜態變量和靜態方
法都可以通過子類名.父類靜態成員的形式調用成功。
2.所有的私有成員不能繼承,private修飾的成員。
3.構造函數不能被繼承

繼承講究的是兩個類之間有…is…a…的關係。不應該爲了功能而繼承。畢竟他只能繼承一個父類。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章