国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

【Java】抽象類與接口

mengbo / 596人閱讀

摘要:在抽象類中,聲明的是,可是。抽象類只能作為子類的超類,子類繼承抽象類時必須被實現。它根本不存在方法的實現實現子類使用關鍵字來繼承抽象類。添加新方法如果你往抽象類中添加新的方法,你可以給它提供默認的實現。轉自,抽象類與接口的區別

抽象類與接口

抽象類與接口一樣,都不能被實例化,可以有具體實現的方法,也可以有抽象的方法。在抽象類中,聲明的field是static、final,method可是public、protected、private。而在接口中,聲明的field是public、static、final,method是public。

抽象類只能作為子類的超類,子類繼承抽象類時abstract method必須被實現。

接口是抽象方法的集合。如果實現了這個接口,那么就必須確保使用這些方法。接口只是一種形式,接口自身不能做任何事情。

在以下情況,可以考慮用abstract class:

You want to share code among several closely related classes.

You expect that classes that extend your abstract class have many common methods or fields, or require access modifiers other than public (such as protected and private).

You want to declare non-static or non-final fields. This enables you to define methods that can access and modify the state of the object to which they belong.

在以下情況,可以考慮用interface:

You expect that unrelated classes would implement your interface. For example, the interfaces Comparable and Cloneable are implemented by many unrelated classes.

You want to specify the behavior of a particular data type, but not concerned about who implements its behavior.

You want to take advantage of multiple inheritance of type.

詳細區別
參數 抽象類 接口
默認的方法實現 它可以有默認的方法實現 接口完全是抽象的。它根本不存在方法的實現
實現 子類使用extends關鍵字來繼承抽象類。如果子類不是抽象類的話,它需要提供抽象類中所有聲明的方法的實現。 子類使用關鍵字implements來實現接口。它需要提供接口中所有聲明的方法的實現
構造器 抽象類可以有構造器 接口不能有構造器
與正常Java類的區別 除了你不能實例化抽象類之外,它和普通Java類沒有任何區別 接口是完全不同的類型
訪問修飾符 抽象方法可以有public、protected和default這些修飾符 接口方法默認修飾符是public。你不可以使用其它修飾符。
main方法 抽象方法可以有main方法并且我們可以運行它 接口沒有main方法,因此我們不能運行它。
多繼承 抽象方法可以繼承一個類和實現多個接口 接口只可以繼承一個或多個其它接口
速度 它比接口速度要快 接口是稍微有點慢的,因為它需要時間去尋找在類中實現的方法。
添加新方法 如果你往抽象類中添加新的方法,你可以給它提供默認的實現。因此你不需要改變你現在的代碼。 如果你往接口中添加方法,那么你必須改變實現該接口的類。
轉自

importnew,Java抽象類與接口的區別.

orcale docs,Abstract Methods and Classes.

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/64107.html

相關文章

  • java學習(三) —— 面對對象

    摘要:前言是面對對象的語言,因此有必要單獨紀錄下對象的各種定義和理解。面對對象基本概述概述是基于面向過程的變成思想,是對面向過程的一種封裝。面對對象開發就是不斷的創建對象,使用對象,指揮對象做事情。面對對象設計其實就是在管理和維護對象之間的關系。 前言 java是面對對象的語言,因此有必要單獨紀錄下對象的各種定義和理解。 面對對象,主要包括:面向對象思想,類與對象及其使用,對象的內存圖,成...

    褰辯話 評論0 收藏0
  • Java抽象類與接口的區別

    摘要:很多常見的面試題都會出諸如抽象類和接口有什么區別,什么情況下會使用抽象類和什么情況你會使用接口這樣的問題。在討論它們之間的不同點之前,我們先看看抽象類接口各自的特性。抽象類抽象類是用來捕捉子類的通用特性的。 很多常見的面試題都會出諸如抽象類和接口有什么區別,什么情況下會使用抽象類和什么情況你會使用接口這樣的問題。本文我們將仔細討論這些話題。 在討論它們之間的不同點之前,我們先看看抽象類...

    Ethan815 評論0 收藏0
  • Java抽象類與接口

    摘要:抽象類和接口抽象類抽象方法是只有方法簽名,沒有方法實現的方法。抽象類不能被實例化,抽象類可以包含方法抽象和普通成員變量構造器初始化塊內部類接口枚舉種成分。抽象類的構造器不能用于創建實例,主要用于被其子類調用。 抽象類和接口 1.抽象類 抽象方法是只有方法簽名,沒有方法實現的方法。有抽象方法的類只能被定義成抽象類,抽象類可以沒有抽象方法。抽象方法和抽象類必須使用abstract修飾符來定...

    wdzgege 評論0 收藏0
  • Java 面向對象

    摘要:自從轉到前段,差不多有一年時間沒有動了,今天老弟問我關于的面向對象,自己不敢直接回答了,也許自己真的應該去做相關的考究了。要有父類引用指向子類對象。外部類要訪問內部類的成員,必須要建立內部類的對象。 自從轉到前段,差不多有一年時間沒有動Java了,今天老弟問我關于Java的面向對象,自己不敢直接回答了,也許自己真的應該去做相關的考究了。然后在告訴他吧,記在這里當做一個筆記吧。  什么...

    cncoder 評論0 收藏0
  • Java編程基礎10——面向對象_多態&抽象類&接口

    摘要:案例演示抽象類的成員特點抽象類的成員方法特性抽象方法強制要求子類做的事情。抽象類中定義的是該繼承體系的共性功能。 1.多態的概述及其成員訪問特點代碼體現 A:多態(polymorphic)概述 事物存在的多種形態 B:多態前提- 1.要有繼承關系 2.要有方法重寫 3.要有父類引用指向子類對象。 C:多態中的成員訪問特點之 成員變量:編譯和運行都看父類。 成員方法:編...

    dunizb 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<