日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

java继承与实现的_[Java学习] Java继承的概念与实现

發布時間:2024/9/30 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java继承与实现的_[Java学习] Java继承的概念与实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

繼承是類與類之間的關系,是一個很簡單很直觀的概念,與現實世界中的繼承(例如兒子繼承父親財產)類似。

繼承可以理解為一個類從另一個類獲取方法和屬性的過程。如果類B繼承于類A,那么B就擁有A的方法和屬性。

繼承使用 extends 關鍵字。

例如我們已經定義了一個類 People:

復制純文本新窗口

1. class People{

2. String name;

3. int age;

4. int height;

5.

6. void say(){

7. System.out.println("我的名字是 " + name + ",年齡是 " + age + ",身高是 " + height);

8. }

9. }

如果現在需要定義一個類 Teacher,它也有 name、age、height 屬性和 say() 方法,另外還需要增加 school、seniority、subject 屬性和 lecturing() 方法,怎么辦呢?我們要重新定義一個類嗎?

完全沒必要,可以先繼承 People 類的成員,再增加自己的成員即可,例如:

1. class Teacher extends People{

2. String school; // 所在學校

3. String subject; // 學科

4. int seniority; // 教齡

5.

6. // 覆蓋 People 類中的 say() 方法

7. void say(){

8. System.out.println("我叫" + name + ",在" + school + "教" + subject + ",有" + seniority + "年教齡");

9. }

10.

11. void lecturing(){

12. System.out.println("我已經" + age + "歲了,依然站在講臺上講課");

13. }

14. }

對程序的說明

· name 和 age 變量雖然沒有在 Teacher 中定義,但是已在 People 中定義,可以直接拿來用。

· Teacher 是 People 的子類,People 是Teacher 類的父類。

· 子類可以覆蓋父類的方法。

· 子類可以繼承父類除private以為的所有的成員。

· 構造方法不能被繼承。

繼承是在維護和可靠性方面的一個偉大進步。如果在 People 類中進行修改,那么 Teacher 類就會自動修改,而不需要程序員做任何工作,除了對它進行編譯。

單繼承性:Java 允許一個類僅能繼承一個其它類,即一個類只能有一個父類,這個限制被稱做單繼承性。后面將會學到接口(interface)的概念,接口允許多繼承。

最后對上面的代碼進行整理:

1. public class Demo {

2. public static void main(String[] args) {

3. Teacher t = new Teacher();

4. t.name = "小布";

5. t.age = 70;

6. t.school = "清華大學";

7. t.subject = "Java";

8. t.seniority = 12;

9. t.say();

10. t.lecturing();

11. }

12. }

13.

14. class People{

15. String name;

16. int age;

17. int height;

18.

19. void say(){

20. System.out.println("我的名字是 " + name + ",年齡是 " + age + ",身高是 " + height);

21. }

22. }

23.

24. class Teacher extends People{

25. String school; // 所在學校

26. String subject; // 學科

27. int seniority; // 教齡

28.

29. // 覆蓋 People 類中的 say() 方法

30. void say(){

31. System.out.println("我叫" + name + ",在" + school + "教" + subject + ",有" + seniority + "年教齡");

32. }

33.

34. void lecturing(){

35. System.out.println("我已經" + age + "歲了,依然站在講臺上講課");

36. }

37. }

(編輯:雷林鵬 來源:網絡)

總結

以上是生活随笔為你收集整理的java继承与实现的_[Java学习] Java继承的概念与实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。