簡體   English   中英

抽象類靜態方法和普通類靜態方法有什么區別?

[英]What is difference between abstract class static method and normal class static method?

我有兩個類,一個是抽象類,另一個是普通類。 兩者都具有靜態方法並以相同的方式調用並成功產生結果。

抽象類的靜態方法:

public abstract class AbstA
{
    public static void Print()
    {
        Console.WriteLine("Abstract Class static method");
    }
}

普通類靜態方法:

public class NormalA
{
    public static void Print()
    {
        Console.WriteLine("Normal Class static method");
    }
}

兩者都成功運行。

AbstA.Print();
NormalA.Print();

那么這兩個類之間有什么區別?

抽象類和常規類中的靜態方法沒有區別,因為靜態方法是在不實例化類的情況下調用的。

如果要使用靜態類的 抽象類普通類甚至靜態 ,則沒有什么區別。 區別在於您要實例化它們中的每一個。

當一個班級是普通的

您可以實例化它。 像您可能擁有的任何普通班。

當一個類是Abstract時

您無法實例化它。 當您有一個抽象類時,您可以具有未實現的類成員(方法,屬性)。 因此,您無法實例化它。 如果您想進一步了解抽象類,請訪問此鏈接

當類為靜態時

您無法實例化它。 當類是靜態的時,它只能包含靜態的成員。 因此您無法實例化它。 如果您想進一步了解靜態類,請訪問此鏈接

在問題的旁白中:靜態方法沒有區別。 他們住在什么都沒關系。

如果要用作別的東西的基類(例如,將鞋子作為抽象類,而將鞋匠(鞋子的類型)作為從鞋子繼承的類),則使用關鍵字“抽象”。 這不會影響里面的方法

希望這有意義

暫無
暫無

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

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