琢磨半天还是没明白楼主什么意思
学习ing

解决方案 »

  1.   

    你是说A中不包含B的一个实例,而A又想引用B?
      

  2.   

    楼主是不是这个意思:::三个对象 A,B,C在 c中 实例化 A,B
    楼主想问 怎样在A中引用B?
      

  3.   

    在A的构造方法中传进一个B对象的引用就可以了呀。
    如:
    ...
    A(B b) {
      b.xxx(...)
      ...
    }
    ...
      

  4.   

    我不知道我理解的对不对:为什么不把被实例化的B对象做参数通过A的方法传递到A对象中进行使用?
      

  5.   

    yabbi21的办法真不错,谢谢了
    不过我还是从心理上有点接受不了,或者说是砖牛角尖吧,两个互不相干的对象,为什么要在创建一个对象的时候却要用到另外一个对象呢?我的想法就是两个对象分别创建好,然后可以互相引用对方的公共方法和属性,我觉得这样更符合客观世界呀。
      

  6.   

    这个与在那里创建没关系吧。要看声明,只要B所在的类里面引入了A的声明就可以了。
    例如:A.java:
    public class A{int a;
    void output(){
    System.out.println("Class A:" + a);
    }B.java:
    import A; //引入A
    public class B{A a;  //在B中引入A类
    void output(){a = new A();
    a.output(); //调用}}}
      

  7.   

    这种方法也是在B里面创建了A后在调用A里面的方法的呀,我困惑的是:
    main:
    {
        A a=new A();
        B b=new B();
    }
    class A
    {
        ......
        public void doA()
        {
            System.out.println("I am A");
        }}
    class B
    {
        ......
        public void doB()
        {
            a.doA();
        }}
      

  8.   

    如果A与B之间是关联关系,那么在B构造时就应该把A的引用传给B,并且B中要有对A引用的声明.如果A与B之间是依赖关系,那么就可以在调用B的方法时把A的引用传给B的方法.