我有一個名爲fdetails
的類,我不希望任何其他類從此類繼承。如何防止類「a」被另一個類繼承?
我可以將它設置爲不被另一個類繼承。我想完成這在以下3種語言完成:
- 的Java
- VB.NET 3.5
- C#3.5
我有一個名爲fdetails
的類,我不希望任何其他類從此類繼承。如何防止類「a」被另一個類繼承?
我可以將它設置爲不被另一個類繼承。我想完成這在以下3種語言完成:
java: final
vb: NotInheritable (NonOverrideable for properties)
c#: sealed
在JAVA - 使用final關鍵字:
public final class FDetails
在C#中 - 密封關鍵字:
sealed class FDetails
在C#中,您使用sealed
關鍵字來阻止類被繼承。
在VB.NET中,您使用NotInheritable
關鍵字。
在Java中,您使用關鍵字final
。
在Java使用最終關鍵字:
public final class fdetails{
}
在C#使用密封關鍵字:
public sealed class fdetails{
}
在VB.net使用NotInheritable關鍵字:
public notinheritable class fdetails
end class
爲了防止C#中的類被繼承,則使用密封的關鍵字。因此,密封的課程可能不會成爲任何其他課程的基礎課程。很明顯,一個封閉的類不能是一個抽象類。下面的代碼...
//C# Example
sealed class ClassA
{
public int x;
public int y;
}
沒有類可以從上面定義的ClassA繼承。 ClassA的實例可以被創建,然後其成員可以訪問,但沒有像下面的代碼是可能的...
class DerivedClass : ClassA { } // Error
中的Jave和VB.net一樣:
java: final
vb: NotInheritable (NonOverrideable for properties)
'static' ISN不需要所需的功能。 – Jeremy 2010-11-04 12:03:37
當然,這是寫錯了,已經刪除它。 – duduamar 2010-11-04 12:04:30