Java抽象類概念與用法實例分析
本文實例講述了Java抽象類概念與用法。分享給大家供大家參考,具體如下:
抽象:就是對一個事物的大概描述
抽象方法:以abstract修飾的方法,這種方法只聲明返回數(shù)據(jù)類型,方法名和所需參數(shù),并沒有函數(shù)體。如 abstract void study();
抽象類特點:
1.抽象類中不一定含有抽象方法;但抽象方法一定在抽象類中。
2.抽象類不具備實際功能,只能用于派生子類
3.抽象類中可以包含構(gòu)造函數(shù),但是構(gòu)造函數(shù)不能被聲明成抽象。抽象類中的成員方法包括一般方法和抽象方法
4.抽象方法和抽象類都必須被abstract關(guān)鍵字修飾
5.抽象類不可以用new創(chuàng)建對象,必須由子類復寫所有抽象方法后,建立子類對象調(diào)用。
6.抽象類中的抽象方法要被使用,必須要子類復寫所有的抽象方法后,建立子類調(diào)用。如果子類只復寫了部分抽象方法,那么該子類還是一個抽象類。
7.抽象方法必須為public或者protected(因為如果為private,則不能被子類繼承,子類便無法實現(xiàn)該方法)
abstract class Student//抽象類 { private String name; private int age; abstract void study();//抽象方法 Student(String name,int age) { this.name=name; this.age=age; } } class GaoZhongStudent extends Student { private String xuehao; GaoZhongStudent(String name,int age,String xuehao) { super(name,age);//執(zhí)行父類構(gòu)造函數(shù) this.xuehao=xuehao; } public void study() { System.out.println("study gaozhong"); } } class ChuZhongStudent extends Student { ChuZhongStudent(String name,int age) { super(name,age); } public void study() { System.out.println("study chuzhong"); } } class abstractDemo { public static void main(String[] args) { ChuZhongStudent p1=new ChuZhongStudent("zhangsan",20); p1.study(); GaoZhongStudent p2=new GaoZhongStudent("lisi",20,"yaohua001"); p2.study(); } }
更多java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java面向?qū)ο蟪绦蛟O(shè)計入門與進階教程》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計有所幫助。
相關(guān)文章
SpringBoot中MyBatis使用自定義TypeHandler的實現(xiàn)
本文主要介紹了SpringBoot中MyBatis使用自定義TypeHandler,當默認的類型映射不能滿足需求時,自定義?TypeHandler?就非常有用,具有一定的參考價值,感興趣的可以了解一下2024-08-08在Java中String和Date、Timestamp之間的轉(zhuǎn)換
這篇文章主要介紹了在Java中String和Date、Timestamp之間的轉(zhuǎn)換 的相關(guān)資料,需要的朋友可以參考下2015-12-12本地MinIO存儲服務(wù)Java遠程調(diào)用上傳文件的操作過程
MinIO是一款高性能、分布式的對象存儲系統(tǒng),它可以100%的運行在標準硬件上,即X86等低成本機器也能夠很好的運行MinIO,這篇文章主要介紹了本地MinIO存儲服務(wù)Java遠程調(diào)用上傳文件的操作過程,需要的朋友可以參考下2023-11-11SpringSecurity整合springBoot、redis實現(xiàn)登錄互踢功能
這篇文章主要介紹了SpringSecurity整合springBoot、redis實現(xiàn)登錄互踢,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-05-05Java布爾值Boolean和boolean之間轉(zhuǎn)換實例用法
在本篇文章里小編給大家整理的是一篇關(guān)于Java布爾值Boolean和boolean之間轉(zhuǎn)換實例用法內(nèi)容,有需要的朋友們跟著學習參考下。2021-06-06