

什么是抽象類?
使用abstract修飾的類稱為抽象類
public abstract class Person {
}public class TestPerson {
    public static void main(String[] args) {
      Person p=new Person() ;|
  }
}public abstract class Person {
    public Person(){
        System.out.println("Person類中的無參構造方法");
    }
}抽象類中構造方法的作用,是提供給子類調用
package com.bjsxt.abstractpro;
public class Student extends Person {
    public Student(){
        super();//調用直接父類的無參構造方法
        System.out.println("Student類的無參構造方法");
    }
}
public class TestPerson {
    public static void main(String[] args) {
        //Person p=new Person();
        Student stu=new Student();
    }
}運行效果圖
成員變量,成員方法,靜態方法,構造方法,final修飾的方法,抽象方法
public abstract class Person {
    //(1)成員變量/實例變量/屬性
    private String name;//姓名
    //(2)成員方法/實例方法
    public void info(){
        System.out.println("大家好,我叫"+name);
    }
    //(3)靜態方法
    public static void show(){
    }
//(4)構造方法
    public Person(){
        System.out.println("Person類中的無參構造方法");
    }
    //(5)final修飾的方法,只能被子類調用,不允許被子類重寫
    public final void fun(){
    }
}什么是抽象方法?
使用abstract修飾的方法稱為抽象方法
public abstract class Person {
    public abstract void print();
}1)抽象方法不允許有方法體,只能以分號“;”結尾
2)抽象方法只能聲明在抽象類中 (含有抽象方法的類必須是抽象類)
3)抽象類中可以包含0個或多個抽象方法
4)抽象方法必須被子類實現
5)如果子類不能實現父類中的抽象方法,那么子類也必須是抽象類
總結:abstract可以修飾類和方法
通過抽象類,可以避免子類設計的隨意性。通過抽象類,我們就可以做到嚴格限制子類的設計,使子類之間更加通用。(程序的可擴展和可維護性)
什么情況下使用抽象類?父類的名稱比較抽象,創建對象無意義。
Animail動物類 –》abstract,  abstract  shout()
每一種運物 ,分別實現發聲的方法
package com.bjsxt.abstractdemo;
public abstract class Animal {//動物
    public abstract void shout();//抽象方法
}
class Dog extends Animal{
    @Override
    public void shout() {
        System.out.println("小狗,汪汪叫..........");
    }
}
class Cat extends Animal{
    @Override
    public void shout() {
        System.out.println("小貓,喵喵叫................");
    }
}
package com.bjsxt.abstractdemo;public class TestAnimal {
    public static void main(String[] args) {
        //父類引用指向子類對象
        Animal dog=new Dog();
        Animal cat=new Cat();
        //調用相同的方法
        dog.shout();
        cat.shout();
        //運行的結果,各不相同(每個子類實現之后的結果)
    }
}運行結果;
都看到這里了,是不是想學習呢?
點擊這里,進入學習吧!
另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
                文章題目:java基礎-抽象類和抽象方法-創新互聯
                
                當前鏈接:http://www.yijiale78.com/article8/pgdop.html
            
成都網站建設公司_創新互聯,為您提供虛擬主機、做網站、Google、自適應網站、企業網站制作、商城網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯
