Java实现两个对象之间互发消息
1.消息含义
对象引用想对象发出的服务请求,是数据成员和成员方法的调用。
2.互发消息含义
通过一个对象的引用来调用另外一个对象的数据成员或成员方法,实现了两个对象之间的联系。
举例:
class FighterPlane {
private String name;
private int missileNum;
private A a;
public void setA(A _a){
if (_a !=null) { a = _a ;}
}
public A getA(){
if (a !=null)
{ return a;}
else return null;
}
public void fire(){ ……}
public FighterPlane(String _name,int _missileNum){ ……}
}
class A
{
FighterPlane fp;
public A(FighterPlane fpp){
this.fp = fpp;
fpp.setA(this);//将当前对象传给FighterPlane
}
public void invoke(){
//A中对象发送消息给FighterPlane的对象
fp.fire();
}
}
public class Run{
public static void main(String[] args)
{
FighterPlane ftp = new FighterPlane("su35",10);
A a = new A(ftp);
a.invoke(); }
}