小编tom*_*szs的帖子

强制接口实现在c#中实现层次结构

我正在为新项目编写接口,并希望得到一些建议.

我有一个具有子类的类,它有一个子类.这个类的树是这样的:

Class Car
{
    Wheels Wheel;
}
Class Wheels
{
    Rims Rim;
}
Run Code Online (Sandbox Code Playgroud)

因此,为了简化:一辆车有一个车轮,一个车轮有一个车轮.(不能弥补其他更好的例子,对不起).

所以我想在我的ICar,IWheels和IRims的接口实现中强制这个层次结构.

所以我做了这样的事情(在C#中):

ICar
{
  IWheels Wheel;
}
IWheels
{
  IRims Rim;
}
Run Code Online (Sandbox Code Playgroud)

我有一个错误,我不能在接口实现中有字段.所以这开始我的事情可能是错误的界面设计.我想强制接口实现来实现这种层次结构.但是,如果按照设计模式和最佳实践,它应该以其他方式完成吗?

您能告诉我如何设计我的系统,以便强制对象实现这种层次结构吗?

也许在我的问题中有一些不精确的东西,或者我错过了一些重要信息.如果是,请在评论中提问.

c# design-patterns interface hierarchy

4
推荐指数
2
解决办法
1233
查看次数

将字符串分配给类会将其重定向到属性

我有一个名为Car的类,其属性为Name。现在,每次我想更改自己的汽车名称时,都必须输入Car1.Name =“ Porka Turbo”。现在我想完成的是这样写的代码少了五个字符:

Car1 = "Porka Turbo"
Run Code Online (Sandbox Code Playgroud)

它应该像这样工作:如果我分配一个从Car类派生的类,它应该进行常规的类分配,但是当我向我的类分配字符串时,应该将此字符串重定向到名为“ Name”的属性。

这样它将与以下命令相同:

Car1.Name = "Porka Turbo"
Run Code Online (Sandbox Code Playgroud)

在C#.NET 3.5中是否可行?如果没有,您是否知道其他任何方法来减少此特定示例中的内容?

c# string class variable-assignment

0
推荐指数
1
解决办法
605
查看次数