18 c# abstract-class
Abstract类的确切用法是什么?在普通的类中是不可能做同样的事情,因为它是一个抽象类?
Cor*_*rch 24
使用抽象类提供一些具体实现但不允许实例化.如果它不能独立存在,你总是可以实例化一个没有意义的普通类.同时,如果在所有实现类中都有相同的具体实现,那么接口可能还不够.抽象类就足够了.
Ada*_*amC 19
当您具有希望子类继承的某些基本功能时,将使用抽象类,但实例化基类是没有意义的.例如,如果你有一个像Shape基类的东西,你可以有一些内置的实现,子类可以使用它们以及你希望子类实现的接口方法.但是,创建Shape对象可能没有意义.抽象类为您提供此功能.抽象类使用的另一个很好的例子是抽象工厂模式.
小智 5
常规类要求您提供所有方法的实现. 接口要求您不要为所有方法提供任何实现.
抽象类是唯一允许您拥有包含实现的方法的类,并且具有不提供实现的方法,但需要继承类来提供实现.
您可以在没有实现的情况下添加方法,这是您无法实例化抽象类的原因:您只能实例化具有其所有方法实现的内容.
归档时间:
16 年,10 月 前
查看次数:
11842 次
最近记录:
13 年,7 月 前