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
        }
    }
    
    

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

  • 相关阅读:
    Kafka~Linux环境下的部署
    Zookeeper~Linux环境下的部署
    pwd显示链接文件的真实路径
    3种不同方式的焦点图轮播
    软件集成策略——如何有效率地提升质量
    寻找直方图中面积最大的矩形 --- 庞果网
    再谈线程
    SQL 常用基础语句
    初识Maven
    公司存在的问题
  • 原文地址:https://www.cnblogs.com/sogeisetsu/p/12216132.html
Copyright © 2011-2022 走看看