国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

java編程abstract類和方法詳解

2024-07-13 10:14:31
字體:
來源:轉載
供稿:網友

抽象類和抽象方法常用知識點:

(1)抽象類作為被繼承類,子類必須實現抽象類中的所有抽象方法,除非子類也為抽象類。

也就是說,如果子類也為抽象類,可以不實現父類中的抽象方法。但是,如果有一個非抽象類

繼承于抽象子類,需要實現抽象子類,抽象子類的抽象父類的所有抽象方法,新帳舊賬一起算。

(2)抽象類不能用final進行修飾。

(3)抽象類不能被實例化,也就是說你用的時候不能通過new關鍵字創建。

(4)抽象類中可以包含抽象方法和非抽象方法,抽象方法沒有方法體,也就是沒有具體實現,

只是定義了有什么功能,但是非抽象方法含有方法體。

eg:

抽象父類Person:

java;">package com.lanhuigu.java;/**  * 抽象類:不能用final修飾,  * 可以包含抽象方法和非抽象方法,  * 抽象方法沒有方法體,只是定義功能,沒有實現;  * 非抽象方法為正常的方法。  */public abstract class Person {	/*    * abstract methods    */	public abstract String eat();	public abstract String sleep();	/*    * non-abstract methods    */	public String sport() {		return "生命在于運動";	}}

非抽象子類Teacher:

package com.lanhuigu.java;/**  * 繼承于抽象類person,必須實現父類中的所有抽象方法  */public class Teacher extends Person {	@Override 	  public String eat() {		// TODO Auto-generated method stub 		return "老師吃飯";	}	@Override 	  public String sleep() {		// TODO Auto-generated method stub 		return "老師睡覺";	}}

非抽象子類Student:

package com.lanhuigu.java;/**  * 繼承于抽象類person,必須實現父類中的所有抽象方法  */public class Student extends Person {	@Override 	  public String eat() {		// TODO Auto-generated method stub 		return "學生吃飯";	}	@Override 	  public String sleep() {		// TODO Auto-generated method stub 		return "學生睡覺";	}}

抽象子類OthersPerson:

package com.lanhuigu.java; /**  * 抽象類繼承自抽象類,可以不用實現其父類的抽象方法  */ public abstract class OthersPerson extends Person {   public abstract String call(); } 

非抽象子類ExtendsOthersPerson繼承于抽象子類OthersPerson:

package com.lanhuigu.java;/**  * 必須實現抽象父類OthersPerson,以及OthersPerson父類Person中  * 的所有抽象方法,新帳舊賬一起算。  */public class ExtendsOthersPerson extends OthersPerson {	@Override 	  public String sleep() {		// TODO Auto-generated method stub 		return "睡覺";	}	@Override 	  public String eat() {		// TODO Auto-generated method stub 		return "吃飯";	}	@Override 	  public String call() {		// TODO Auto-generated method stub 		return "打電話";	}}

測試代碼:

package com.lanhuigu.java;public class TestAbstract {	public static void main(String[] args) {		Teacher teacher = new Teacher();		Student student = new Student();		//OthersPerson othersPerson = new OthersPerson();//報錯,抽象類不能被實例化 		System.out.println(teacher.eat());		System.out.println(teacher.sleep());		System.out.println(teacher.sport());		// 繼承父類非抽象方法 		System.out.println("==============");		System.out.println(student.eat());		System.out.println(student.sleep());		System.out.println(student.sport());		// 繼承父類非抽象方法	}}

控制臺輸出:

老師吃飯
老師睡覺
生命在于運動
==============
學生吃飯
學生睡覺
生命在于運動

總結

以上就是本文關于java編程abstract類和方法詳解的全部內容,希望對大家有所幫助。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 比如县| 霍林郭勒市| 浦东新区| 杭锦旗| 平昌县| 木兰县| 河源市| 上高县| 府谷县| 子洲县| 邯郸市| 大冶市| 云龙县| 隆昌县| 都昌县| 巩留县| 砚山县| 阜新市| 保定市| 阿勒泰市| 荆门市| 寿宁县| 射阳县| 精河县| 轮台县| 金门县| 淳化县| 红河县| 海口市| 龙海市| 讷河市| 安阳县| 金昌市| 石门县| 绥滨县| 肥乡县| 咸丰县| 泽库县| 吉林省| 信宜市| 蒲城县|