Java抽象類概念與用法實(shí)例分析
本文實(shí)例講述了Java抽象類概念與用法。分享給大家供大家參考,具體如下:
抽象:就是對(duì)一個(gè)事物的大概描述
抽象方法:以abstract修飾的方法,這種方法只聲明返回?cái)?shù)據(jù)類型,方法名和所需參數(shù),并沒(méi)有函數(shù)體。如 abstract void study();
抽象類特點(diǎn):
1.抽象類中不一定含有抽象方法;但抽象方法一定在抽象類中。
2.抽象類不具備實(shí)際功能,只能用于派生子類
3.抽象類中可以包含構(gòu)造函數(shù),但是構(gòu)造函數(shù)不能被聲明成抽象。抽象類中的成員方法包括一般方法和抽象方法
4.抽象方法和抽象類都必須被abstract關(guān)鍵字修飾
5.抽象類不可以用new創(chuàng)建對(duì)象,必須由子類復(fù)寫所有抽象方法后,建立子類對(duì)象調(diào)用。
6.抽象類中的抽象方法要被使用,必須要子類復(fù)寫所有的抽象方法后,建立子類調(diào)用。如果子類只復(fù)寫了部分抽象方法,那么該子類還是一個(gè)抽象類。
7.抽象方法必須為public或者protected(因?yàn)槿绻麨閜rivate,則不能被子類繼承,子類便無(wú)法實(shí)現(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è)計(jì)入門與進(jìn)階教程》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
相關(guān)文章
SpringBoot中MyBatis使用自定義TypeHandler的實(shí)現(xiàn)
本文主要介紹了SpringBoot中MyBatis使用自定義TypeHandler,當(dāng)默認(rèn)的類型映射不能滿足需求時(shí),自定義?TypeHandler?就非常有用,具有一定的參考價(jià)值,感興趣的可以了解一下2024-08-08如何實(shí)用Java實(shí)現(xiàn)合并、拆分PDF文檔
這篇文章主要介紹了如何實(shí)用Java實(shí)現(xiàn)合并、拆分PDF文檔,處理PDF文檔時(shí),這樣的好處是對(duì)文檔的存儲(chǔ)、管理很方便。下面將通過(guò)Java程序代碼介紹具體的PDF合并、拆分的方法,需要的朋友可以參考下2019-07-07在Java中String和Date、Timestamp之間的轉(zhuǎn)換
這篇文章主要介紹了在Java中String和Date、Timestamp之間的轉(zhuǎn)換 的相關(guān)資料,需要的朋友可以參考下2015-12-12淺析SpringBoot及環(huán)境搭建過(guò)程
Spring Boot是由Pivotal團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來(lái)簡(jiǎn)化新Spring應(yīng)用的初始搭建以及開(kāi)發(fā)過(guò)程.這篇文章主要介紹了SpringBoot介紹及環(huán)境搭建,需要的朋友可以參考下2018-01-01本地MinIO存儲(chǔ)服務(wù)Java遠(yuǎn)程調(diào)用上傳文件的操作過(guò)程
MinIO是一款高性能、分布式的對(duì)象存儲(chǔ)系統(tǒng),它可以100%的運(yùn)行在標(biāo)準(zhǔn)硬件上,即X86等低成本機(jī)器也能夠很好的運(yùn)行MinIO,這篇文章主要介紹了本地MinIO存儲(chǔ)服務(wù)Java遠(yuǎn)程調(diào)用上傳文件的操作過(guò)程,需要的朋友可以參考下2023-11-11SpringSecurity整合springBoot、redis實(shí)現(xiàn)登錄互踢功能
這篇文章主要介紹了SpringSecurity整合springBoot、redis實(shí)現(xiàn)登錄互踢,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-05-05Java布爾值Boolean和boolean之間轉(zhuǎn)換實(shí)例用法
在本篇文章里小編給大家整理的是一篇關(guān)于Java布爾值Boolean和boolean之間轉(zhuǎn)換實(shí)例用法內(nèi)容,有需要的朋友們跟著學(xué)習(xí)參考下。2021-06-06