例如
public class A {
    A a;
    int count;    public A(int count) {
        this.count = count;
    }    public int getCount() {
        return count;
    }    public void setCount(int count) {
        this.count = count;
    }}public class B {
    A a1;
    
    public B() { }}单实例类的话,为了取得唯一的一个类实例,要在单实例里声明一个本类的对象返回,这还好理解。
如果不是单实例类,例如上面的A,定义一个本类的实例a有什么意义呢?在另一个类B里面定义一个A的对象a1, 然后a1.a可以这样使用吗,有什么用处吗?    

解决方案 »

  1.   

    A a; 你这样声明的是friendly类型的,可以在A类内使用,如果B类与A类在同一包中,a1.a是可以使用的。这应该不是单例的结构吧;
    你这样使用貌似也没啥意义吧
      

  2.   

    啊,也不对,你的a1并没有创建对象,那只是声明,你得new了之后才能调用
      

  3.   

    没啥用
    如果你在一个类的内部定义了一个非静态的本类的实例
    外部new这个类的实例的时候会栈溢出的