• 单例模式


    单例模式:目的是不让类可以实例化多个,只让其实例化一个(不管实例化几次,值都相同)

      

    1.懒汉模式(有点无语的比喻)

      要实例化的类

    public class Student {
        //设置私有静态变量
        private static Student student=null;
    
        //设置私有无参构造
        private Student() {
    
        }
    
        //设置一个公有静态类来让其他类访问(可当做访问接口)
        public static synchronized Student door(){
            if(student==null){
                student=new Student();
            }
                return student;
        }
    }

    在另外一个类调用这个方法:

            Student stu1=Student.door();
            Student stu2=Student.door();
            System.out.println(stu==stu1);
            System.out.println(stu==stu2);

    其结果为:

      注:如果强行实例化,当然会报错啦~

    2.饿汉模式

      要实例化的类

    public class Student {
        //设置静态变量
        private static Student student=new Student();
    
        //设置一个公有静态类来让其他类访问(可当做访问接口)
        public static synchronized Student door(){
                return student;
        }
    }

    在另外一个类调用这个方法:

    Student stu1=Student.door();
    Student stu2=Student.door();
    System.out.println(stu==stu1);
    System.out.println(stu==stu2);
  • 相关阅读:
    跳转
    登录
    计算器
    安卓作业
    第十三周作业
    第十三周上机练习
    第十二周作业
    第十二周上机作业
    第八周作业
    第七周作业
  • 原文地址:https://www.cnblogs.com/wang2386033566/p/9323290.html
Copyright © 2020-2023  润新知