Java中抽象类和接口的使用方法及区别
生活随笔
收集整理的這篇文章主要介紹了
Java中抽象类和接口的使用方法及区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.抽象類和接口
抽象類和接口為我們提供了實現類的公共行為規范,在繼承它們時對里面的抽象方法進行重寫就可以了。
抽象類:包含抽象方法和普通方法,抽象方法只需要聲明就可以了,不需要寫出方法體,此外,抽象類不可以被實例化,但可以有構造器,在下面的代碼中我們會看到。抽象類用abstract定義,實現用extends。聲明的抽象方法必須被實現。
接口:接口中方法默認的都是抽象方法,修飾符為public,實現時的方法要用public來修飾,數據成員一旦被定義必須被初始化,且不能夠被修改,相當于static和final的結合;一個類可實現多個接口。但只能繼承一個類。接口用interface定義,實現用implements。接口中的所有方法必須被實現。
2.代碼實現
interface B{int b=2;//數據成員必須被初始化 void playB();//默認為public,abstract類型 void printB(); } interface C{int c=3; void playC(); void printC(); } abstract class A{A(){ //抽象類中可以有構造器 System.out.println("A():"); }abstract void play();//抽象方法申明 void print(){ //普通方法 System.out.println("A:print()"); } } public class Abstract extends A implements B,C{ //實現一個抽象類,兩個接口 //實現抽象類A中方法 public void play(){ //本身類中的方法 System.out.println("Abstract:play()"); }//實現接口B中的方法 public void playB(){System.out.println("Abstract:playB()"); }public void printB(){System.out.println("Abstract:printB()"); }//實現接口C中的方法 public void playC() {System.out.println("Abstract:playC()"); }public void printC() {System.out.println("Abstract:printC()"); }//輸出接口中的數據成員值 void Abstractprint(){System.out.println("Abstract:print()"+b+" "+c); }public static void main(String args[]){Abstract a=new Abstract(); a.play(); a.print(); a.playB(); a.printB(); a.playC(); a.printC(); a.Abstractprint(); } }3.實現結果顯示:
總結
以上是生活随笔為你收集整理的Java中抽象类和接口的使用方法及区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java中多态(向上转型)机制
- 下一篇: LeetCode上删除链表末尾第N个节点