扫描二维码下载沐宇APP

沐宇

微信扫码使用沐宇小程序

沐宇

Java鐨刟bstract鎬庝箞浣跨敤

扬州沐宇科技
2023-12-23 14:28:17
Java

Java涓殑abstract鍏抽敭瀛楃敤浜庡0鏄庢娊璞$被鍜屾娊璞℃柟娉曘€?/p>

  1. 鎶借薄绫伙細浣跨敤abstract鍏抽敭瀛椾慨楗扮殑绫荤О涓烘娊璞$被锛屽畠涓嶈兘鐩存帴瀹炰緥鍖栵紝鍙兘浣滀负鐖剁被琚户鎵裤€傛娊璞$被鍙互鍖呭惈鎶借薄鏂规硶鍜岄潪鎶借薄鏂规硶銆?/p>

    abstract class Animal {
        String name;
    
        abstract void sound(); // 鎶借薄鏂规硶
    
        void sleep() {
            System.out.println("Animal is sleeping");
        }
    }
    
  2. 鎶借薄鏂规硶锛氫娇鐢╝bstract鍏抽敭瀛椾慨楗扮殑鏂规硶绉颁负鎶借薄鏂规硶锛屽畠娌℃湁鏂规硶浣擄紝鍙湁鏂规硶鐨勫0鏄庯紝鍏蜂綋鐨勫疄鐜扮敱瀛愮被瀹炵幇銆?/p>

    abstract void sound();
    

    瀛愮被蹇呴』瀹炵幇鎶借薄绫讳腑鐨勬娊璞℃柟娉曪紝鍚﹀垯瀛愮被涔熼渶瑕佸0鏄庝负鎶借薄绫汇€?/p>

    class Dog extends Animal {
        void sound() {
            System.out.println("Dog is barking");
        }
    }
    

    娉ㄦ剰锛氭娊璞℃柟娉曚笉鑳借澹版槑涓簆rivate銆乻tatic鎴杅inal锛屽畠蹇呴』琚瓙绫诲疄鐜帮紝骞朵笖涓嶈兘琚疄渚嬪寲銆?/p>

  3. 浣跨敤鎶借薄绫伙細

    • 鎶借薄绫讳笉鑳界洿鎺ュ疄渚嬪寲锛屽彧鑳介€氳繃鍏跺瓙绫昏繘琛屽疄渚嬪寲銆?/li>
    Animal animal = new Dog();
    animal.sound(); // 杈撳嚭锛?quot;Dog is barking"
    animal.sleep(); // 杈撳嚭锛?quot;Animal is sleeping"
    
    • 鎶借薄绫诲彲浠ヤ綔涓烘柟娉曠殑鍙傛暟绫诲瀷鍜岃繑鍥炲€肩被鍨嬨€?/li>
    void doSomething(Animal animal) {
        // ...
    }
    
    Animal getAnimal() {
        // ...
    }
    
    • 鎶借薄绫诲彲浠ヨ缁ф壙鍜屾墿灞曘€?/li>
    class Cat extends Animal {
        void sound() {
            System.out.println("Cat is meowing");
        }
    }
    

扫码添加客服微信