静态方法调用内部类时候的new 问题

package tool;

/**
 * 静态方法调用内部类时候的new 问题
 */
public class aa {

    // 静态方法
    // 静态方法new 有问题
    public static void aa() {
        bb b = new bb(); //报错
        bb b1 = new aa().new bb();//没问题
        
        //解决方法
        /*
         * 1.内部类设置成静态类
         * 2.内部类new的方式   bb b = new aa().new bb()
         * 
         */
    }

    // 非静态的方法直接new,没有问题
    public void cc() {
        bb b = new bb();
    }

    // 内部类bb
    class bb {
        private int b;

        public int getB() {
            return b;
        }

        public void setB(int b) {
            this.b = b;
        }

    }
}

原文地址:https://www.cnblogs.com/renjianjun/p/9204988.html