Java:抽象类笔记
抽象類:類中沒有包含足夠的信息來描繪一個具體的對象。
為什么要創(chuàng)建抽象類?
為了更好的繼承,以后能更好的擴展,減少類與類之間的耦合。
什么時候需要創(chuàng)建一個抽象類?
(簡單粗暴的理解)某個方法在父類中實現(xiàn)出來沒有任何意義,必須根據(jù)子類的實際需求來進行不同的實現(xiàn), 那么就可以將這個方法聲明為abstract方法,此時這個類也就成為abstract類。
tips: 1. 構(gòu)造方法,類方法(用static修飾的方法)不能聲明為抽象方法。如何理解?
? ? ? ? 2.抽象類的子類必須給出抽象類中的抽象方法的具體實現(xiàn),除非該子類也是抽象類。
如何創(chuàng)建抽象類?
就像寫文章先建立大綱一樣:創(chuàng)建3個java文件。
1. 父類 - 抽象類: Employee.java 文件。
2. 子類 - 繼承抽象類: Salary.java 文件。
3. 實例化子類: SalaryList.java 文件。
再根據(jù)大綱填充內(nèi)容。
首先來填充抽象類的內(nèi)容。
抽象類可以聲明變量、成員方法、和構(gòu)造方法。
public abstract class Employee {private String name;private String address;private int number;public Employee(String name, String address, int number){this.name = name;this.address =address;this.number = number;}public double computePay(){return 0.0;}public void mailCheck(){System.out.println("Mailing a check to " + this.name + " " + this.address);}public String toString(){ return name + " " + address + " " + number;}public void setAddress(String newAddress){address = newAddress;}public String getName(){return name;}public String getAddress(){return address;}public int getNumber(){return number;}}再來看子類如何繼承:
任何子類必須重寫父類的抽象方法,或者聲明自身為抽象類
最后實例化:
繼承了抽象類Employee的子類Salary的實例化
public class AbstractDemo { //繼承了抽象類Employee的子類Salary的實例化public static void main(String [] args){Salary s = new Salary("aaa", "Beijing", 2, 5.0);Employee e = new Salary("bbb", "Beijing", 3, 6.0);s.mailCheck();e.mailCheck();} }?
轉(zhuǎn)載于:https://www.cnblogs.com/dodocie/p/7447437.html
總結(jié)
以上是生活随笔為你收集整理的Java:抽象类笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 经典模拟电路仿真
- 下一篇: 模拟电路——基本放大电路