读书人

请问 类 相互调用 的 方式

发布时间: 2014-01-21 00:35:39 作者: rapoo

请教 类 相互调用 的 方式
C#里
类文件相互调用都有哪些途径
比如有 类1 和类2,里面分别有一些方法,大家都用哪些方式去相互调用?




[解决办法]
调用和回调(委托)

调用:
class A
{
public void foo() { new B().foo(); }
public void bar() { }
}
class B
{
public void foo() { new A().bar(); }
}
静态方法
class A
{
static public void foo() { B.foo(); }
static public void bar() { }
}
class B
{
static public void foo() { A.bar(); }
}
回调形式1
class A
{
public void foo() { new B().foo(this); }
public void bar() { }
}
class B
{
public void foo(A a) { a.bar(); }
}
回调形式2
class A
{
public void foo() { new B().foo(this.bar); }
public void bar() { }
}
class B
{
public void foo(Action action) { action(); }
}
[解决办法]
静态函数直接通过类名,非静态的要通过类的实例访问,可以传递实例对象,委托等等
[解决办法]
实例化再调用、直接从类调用静态变量或成员,封装成dll再调用等等,以上是我能想到的乱七八糟的答案。呵呵
[解决办法]

引用:
能再补充下 各自方式的优点,缺点就更好了


没有什么优缺点,根据需要来。

好比厨房和洗手间怎么比较优缺点?

读书人网 >C#

热点推荐