温故而知新,可以装逼矣。。。

1、静态内部类
2、System.out 与System.err

package com.yexue.example.small;

/**
 * 静态内部类的优点:降低包的深度,不受外部类实例影响
 * 非静态内部类优点:可以自由使用外部类的所有变量和方法
 * @author yexue
 * @expl
 * @time 2017年9月1日 上午11:33:29
 */
public class StaticTest {
    public static void main(String[] args) {
        Test2.TestSub1 sub1 = new Test2().new TestSub1();
        Test2.TestSub2 sub2 = new Test2.TestSub2();
        Test2.TestSub1 sub11 = Test2.getInstance().new TestSub1();
        Test2.TestSub1 sub12 = Test2.getInst().new TestSub1();
        /**
         * <p>
         * err 与 out
         * err:标准错误输出,没有缓存,及时输出
         * out:标准输出,带缓存
         * 现象:下面例子中,out按顺序输出,err不一定
         * </p>
         */
        System.out.println("start...");
        System.err.println("middle...");
        System.out.println("end...");
    }

}

class Test2 {
    
    class TestSub1 {
        public String getA() {
            return a;
        }
        public String getB() {
            return b;
        }

    }

    static class TestSub2 {
        public String getA() {
            return a;
        }
        //BAD
//      public String getB() {
//          return b;
//      }

    }
    
    TestSub2 getTestSub2(){
        return new TestSub2();
    }

    static String a = "aaaa";
    String b = "bbbb";

    /**
     * 单例模式
     * @return
     */
    public static Test2 getInst() {
        return InnerInstance.test2;
    }

    static class InnerInstance {
        static Test2 test2 = new Test2();
    }

    /**
     * 懒汉模式,不建议写在有静态属性的类里面
     */
    private static Test2 INSTANCE = new Test2();

    public static Test2 getInstance() {
        return INSTANCE;
    }
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,766评论 18 399
  • 一. Java基础部分.................................................
    wy_sure阅读 3,836评论 0 11
  • 一、设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者...
    lichengjin阅读 909评论 0 8
  • Java 内部类 分四种:成员内部类、局部内部类、静态内部类和匿名内部类。 1、成员内部类: 即作为外部类的一个成...
    ikaroskun阅读 1,252评论 0 13
  • 7分 18禁galgame改编动漫我只服日在校园 毕竟是用生命在监制(´•ω•`๑) 机缘巧合重补了一遍,当年初看...
    君问归期否阅读 643评论 0 0