.net 如何正确编程
我有两个不同的小部件,它们共享10个相同的成员。然而,它们也有两个阶段。 每个阶段都有其他阶段没有的特定成员.net 如何正确编程,.net,vb.net,.net-4.0,private-members,.net,Vb.net,.net 4.0,Private Members,我有两个不同的小部件,它们共享10个相同的成员。然而,它们也有两个阶段。 每个阶段都有其他阶段没有的特定成员 public class widget private _id as integer private _engravedId as string private _stage as WidgetStage private _wig as IWidget end class public interface IWidget Calculate() end
public class widget
private _id as integer
private _engravedId as string
private _stage as WidgetStage
private _wig as IWidget
end class
public interface IWidget
Calculate()
end interface
public class Twidget
implemets IWidget
private t as integer
private b as double
private d as double
end class
public class Rwidget
implemenents IWidget
private y as integer
private x as double
private b as double
end class
如果我在我的类中声明了一个Iwidget,那么我将不得不强制转换它以访问派生类变量。有更好的方法吗?如果所有私有变量在IWidget上下文中都具有相同的含义,那么您可以向IWidget添加属性来检索它们 否则,您可以实现反射来检索值,但除非您正在执行诸如将属性映射到数据库列或用户界面元素值之类的操作,否则这很可能不是正确的方法
这意味着强制转换很可能是您的场景的最佳方式。如果附加变量是私有的,那么即使您强制转换,您将如何访问这些变量?