在java中可以把一个类对象通过接口方式传到另外一个类 比如说(java 中): class A extends Object implements IterfaceA{ //this method is a method of InterfaceA public void methodA(){ } public void init(){ B test=new B((InterfaceA)this); } }//end of Class class B extnds Object{ InterfaceA interA; public B(InterfaceA a){ interA=a; } public void someMethod{ interA.methodA();//关键是这一行,可以实现在B类中调用A的方法. } }
iphone
找到解决办法了 就是传递 id <MyProtocol> 的方法 传递和使用的时候用 (id <MyProtocol>) 做强制类型转换。 在使用的时候可以加上下面这句话,做安全性检查 if ( ![receiver conformsToProtocol:@protocol(MyProtocol)] ) { } 这里的MyProtocol 是自定义的protocol 比如定义在一个.h文件中的 @protocol MyProtocol - (void)requiredMethod; @optional - (void)anOptionalMethod; - (void)anotherOptionalMethod; @required - (void)anotherRequiredMethod; @end