2012-08-07 100 views
1

如何动态创建两个对象时,如何从另一个对象方法调用/调用对象的方法?调用动态对象的方法

的情况如下:

我有动态创建的每个对象两个对象对应于不同类

objA 
    Method1A() 
objB 
    Method1B() 

我想打电话objA小号method1B()“从objB小号method1A()”。

我该如何做到这一点/您建议采用哪种方法?

回答

2

为了调用某种类型的实例方法,您需要一个该类型的实例。所以,如果Method1B应该在objA调用一个实例方法,你可以通过这个实例作为参数传递给方法:

public void Method1B(ObjA objA) 
{ 
    objA.Method1A(); 
} 
+0

我认为如果在objB之后创建objA,那么该如何实现呢? – 2012-08-08 22:40:26

+0

@ armadillo.mx如果可能,那么你有一个循环。现在你不能用单独的程序集来解决这个问题,除非你可以避免循环声明;那么你可以在没有循环调用的情况下编译一个程序集,然后在其他程序集构建完成后重新编译它。你可以在这里尝试一下,但除非你知道周期以及你可以暂时破坏它们的位置,否则你需要做一些分析。 – 2012-08-09 02:53:19

+1

@马克赫德,你是对的我想我需要一种不同的方法,谢谢! – 2012-08-14 16:22:09

1

如果它是可能的“objAobjB后创建”那么你有一个周期。现在你不能用单独的程序集来解决这个问题,除非你可以避免循环声明;那么你可以在没有循环调用的情况下编译一个程序集,然后在其他程序集构建完成后重新编译它。你可以在这里尝试一下,但除非你知道周期以及你可以暂时破坏它们的位置,否则你需要做一些分析。

注意this question要求并获得类似于我的正常程序集之间循环依赖关系的方法。