zoukankan      html  css  js  c++  java
  • java构造函数私有化

    构造函数私有化的意义在于声明多个对象却只占用一个内存。

    写一个类

    class SY {//构造函数私有
        private static SY instance = new SY();//通过私有的静态的方式来声明一个属性,这个属性的名字是instance,类型是SY,指向一个新生成的内存
    
        private SY() {//将构造函数私有化
    
        }
    
        public static SY getinstance() {
            return SY.instance;//返回instance
        }//构造函数私有化的意义是不管声明几个对象,都只实例化了一个,也就是说,只占用了一个内存。
    
        private String name = "小明";
        private int age = 12;
        public void setName(String name){
            this.name=name;
        }
        public void setAge(int age){
            this.age=age;
        }
        public String getName(){
            return this.name;
        }
        public int getAge(){
            return this.age;
        }
    }
    
    class SYY {
        public static void main(String[] args) {
            SY a = SY.getinstance();
            SY b = SY.getinstance();
            System.out.println(a);
            System.out.println(b);
            System.out.println(a == b);//true,并且a和b返回的地址一样
            a.setAge(12);
            b.setAge(14);
            System.out.println(a==b);
            System.out.println(a.getAge());//14
            System.out.println(b.getAge());//14
        }
    }
    
    

    具体我画了内存图
    在这里插入图片描述

  • 相关阅读:
    [AGC005D] ~K Perm Counting
    [国家集训队]middle
    CF842D Vitya and Strange Lesson
    浅谈脚本化css(三)之方块运动函数
    浅谈脚本化css(二)
    浅谈脚本化css(一)
    滚动条详解及制作(三)
    滚动条详解及制作(二)
    滚动条详解及制作(一)
    javascript定时器详解
  • 原文地址:https://www.cnblogs.com/sogeisetsu/p/12216132.html
Copyright © 2011-2022 走看看