日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何保证对象的唯一性

發布時間:2025/3/8 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何保证对象的唯一性 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/* 如何保證對象的唯一性:1.不允許其他程序用new來創建該類對象。2.在該類創建一個本類實例。3.對外提供一個方法讓其他程序可以獲取該對象的引用。 */ public class Test{public static void main(String[] args){//Subject sub = Subject.oSub;//這種方法不可控,一般不訪問成員Subject sub = Subject.getInstance();//我們可以在方法中增加條件,根據條件是否返回對象的引用,增加程序的可控性!new Student().show(sub);new Teacher().show(sub);} }class Subject{public String sub;public static Subject oSub = new Subject();private Subject(){sub = "計算機科學與技術";}public static Subject getInstance(){//oSub = new Subject();//if(****) 增加 if 判斷 可以 增加程序的可控性return oSub;}public String getSubject(){return sub;}public void setSubjcet(String name){sub = name;} }/*靜態成員變量和普通成員變量的顯示初始化的不同之處:以下面的例子為例:靜態變量的顯示初始化編譯之后不會放進 構造函數中!(想一想啊,如果放進了構造函數中,那不就是產生對象了嗎?那可能嗎?它是靜態的,是屬于類的!普通成員變量是屬于對象的,所以顯示初始化會放進構造函數中)所以不會使構造函數一直調用,最終棧溢出而普通成員變量的顯示初始化編譯之后回放進構造函數中, 這樣就會導致構造函數一直被反復調用!class Subject{public String sub;//public Subject ss = new Subject();public static Subject oSub = new Subject();//惡漢式//public static Subject oSub = null;//懶漢式private Subject(){//oSub = new Subject();//oSub是靜態變量,加上這一句就會導致oSub顯示初始化時棧溢出!sub = "計算機科學與技術";}public static Subject getSubject(){ return oSub;//return oSub = new Subject();} } */class Student{public void show(Subject sub){System.out.println(sub.sub);} }class Teacher{public void show(Subject sub){System.out.println(sub.sub);} }

  

轉載于:https://www.cnblogs.com/hujunzheng/p/3872833.html

總結

以上是生活随笔為你收集整理的如何保证对象的唯一性的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。