簡體   English   中英

如果一個類正在使用接口,那么它必須

[英]If a class is using an interface, it must

如果一個類正在使用接口,它必須:

  • (1)繼承接口的屬性

  • (2)包含與接口相同的方法

  • (3)創建一個接口對象

  • (4)以上所有

正確的答案是(4) 以上所有

注意:這來自這里 ,我不知道誰是這個問題的作者。

我同意(1)st和(2)nd,但我會爭論(3)rd的措辭。

我想它可以被雙重解釋;

創建接口對象可能只是一個繼承接口的類的實例

要么

接口類型的引用變量


解釋上述內容的正確方法是什么?

下面有意義嗎?

如果一個類正在使用接口,它必須:

  • (1)繼承接口的屬性

  • (2)為接口公開的所有方法提供實現

  • (3)???

  • (4)以上所有

(2)為接口公開的所有方法提供實現

否。抽象類可以在不提供實現的情況下實現接口(它們仍然必須聲明接口中定義的方法,但它們不必提供主體)。

我不知道如何解釋3號。 當你通過鏈接查看時,它只是一個措辭嚴重的問題。 我還在試圖找出這意味着什么:

  1. 代碼公共類B的輸出是什么:A {}
    • 錯誤
    • 它定義了一個僅繼承A的公共方法的類。
    • 它定義了一個繼承A的所有方法的類,但是無法訪問私有成員。
    • b和c

我想你只是誤讀了一些東西。 我所看到的文字告訴我的是

(1)實現一個類,以便您可以創建一個對象,該對象是該類的實例,該類的每個方法和實現的接口必須是具體的 - 必須完全實現。

(2)由於接口與對象實例相關聯,因此在您可以訪問關聯的方法之前,實際上必須存在對象實例。

我並沒有真正看到它說更深刻或更清楚的東西。 你問過的那條線似乎只是在第二點:要實際使用接口方法,你需要有一個關聯類的對象,可以在其上調用方法。

這是因為C#中的接口不支持靜態方法。 因此,所有方法都是實例方法......因此,如果沒有關聯對象(接口實例)或“接口對象”,就不能“使用”接口,因為它們似乎在這里使用該術語。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM