小编use*_*685的帖子

界面良好做法

拥有一个没有方法但只有属性的接口是一个好习惯吗?

.net

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

检查课程的最佳方式

我有一个方法,它接受一个接口对象的参数

像这样

private void SomeMethod(InterfaceA IUA)
Run Code Online (Sandbox Code Playgroud)

在方法内部我有这样的声明

ClassD someVar = (ClassD)(((ClassC)((ClassB)IUA)).D);
Run Code Online (Sandbox Code Playgroud)

一切都很精致和花花公子.但是,在某些情况下,对象IUA可能是ClassZ的实例而不是ClassB.所以在这种情况下上面的行错误了.在执行上述语句之前,有没有办法找出对象真正属于哪个类?如果我事先知道那么我可以有一个If语句并执行以下操作

ClassZ someVar = (ClassD)(((ClassC)((ClassZ)IUA)).Z);
Run Code Online (Sandbox Code Playgroud)

我来自java背景...在java中我知道我们有getClass()...在.net中会有什么相同的东西?

c#

0
推荐指数
2
解决办法
171
查看次数

标签 统计

.net ×1

c# ×1