1. 程式人生 > 其它 >java繼承基礎內容

java繼承基礎內容

 1 /*
 2  * 繼承的好處:
 3  * 1,提高了程式碼的複用性。
 4  * 2,讓類與類之間產生了關係,給第三個特徵多型提供了前提。
 5  * 
 6  * 
 7  * java中支援單繼承。不直接支援多繼承,但對c++中的多繼承機制進行改良。
 8  * 
 9  * 單繼承:一個子類只能有一個直接父類。
10  * 
11  * 多繼承:一個子類可以有多個直接父類(java中不允許,進行改良)
12  *       不直接支援,是因為多個父類中有相同成員,會產生呼叫不確定性。
13  *       *在java中是通過“多實現”的方式來體現*。
14  *       
15 * java支援多層(多重)繼承。 16 * 17 * C繼承B,B繼承A 18 * 就會出現繼承體系。 19 * 20 * 當要使用一個繼承體系時, 21 * 1,檢視該體系中的頂層類,瞭解該體系的基本功能。 22 * 2,建立體系中的最子類物件,完成功能的使用。 23 * 24 * class Demo{ 25 * void show1(){} 26 * } 27 * 28 * class DemoA extends Demo{ 29 * // void show1(){}; 30 * void show2(){}; 31 * }
32 * 33 * class DemoB extends Demo{ 34 * // void show1(){}; 35 * void show2(){}; 36 * } 37 * 38 * 什麼時候定義繼承呢? 39 * 40 * 當類與類之間存在著所屬關係的時候,就定義繼承。xxx是yyy中的一種。xxx extend yyy 41 * 所屬關係: is a ←關係 42 * 43 */ 44 class A{ 45 void show() { 46 System.out.println("a"); 47 } 48 }
49 class B{ 50 void show() { 51 System.out.println("b"); 52 } 53 } 54 class C extends A,B { 55 56 } 57 class Person{ 58 String name; 59 int age; 60 61 } 62 63 class Student extends/*繼承*/ Person { 64 //String name; 65 //int age; 66 void study() { 67 System.out.println(name+"...student study.."+age); 68 } 69 } 70 class Worker extends Person { 71 //String name; 72 //int age; 73 void work() { 74 System.out.println("worker work"); 75 } 76 } 77 public class ExtendsDemo { 78 public static void main(String[] args) { 79 Student s = new Student(); 80 s.name = "zhangsan"; 81 s.age = 22; 82 s.study(); 83 84 } 85 }