我有一个名为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