亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JAVA中構造方法私有化的作用是什么?

JAVA中構造方法私有化的作用是什么?

慕桂英3389331 2019-03-03 04:00:03
JAVA中構造方法私有化的作用是什么?
查看完整描述

2 回答

?
喵喔喔

TA貢獻1735條經驗 獲得超5個贊

本類內部中實例化對象。

類中的封裝性不光體現在對屬性的封裝上,實際上方法也是可以被封裝的,當然在方法封裝中也包含了對構造方法的封裝。

舉例:

public class GzPrivate2 {

public static void main(String[] args) {

//聲明對象,不會報錯

Singleton s = null;

//實例化對象,調用了私有化的構造方法,程序報錯

s = new Singleton();//錯誤,無法實例化對象

}

}

class Singleton{

private Singleton(){

//將構造方法進行了封裝,私有化,這時候此構造方法只能在本類中可見!

}

public void prit(){

System.out.println("nishuibaichuan");

}

}

以上程序運行報錯!因為此類Singleton中的構造方法被私有化了,只能在本類Singleton中可見,不能再外部直接實例化!既然再外部不可用,那么我們就在內部使用!

舉例:

public class GzPrivate {

public static void main(String[] args) {

//聲明對象,不會報錯

Singleton1 s = null;

}

}

class Singleton1{

//在內部產生本類的實例化對象

Singleton1 singleton1 = new Singleton1();

private Singleton1(){

//將構造方法進行了封裝,私有化,這時候此構造方法只能在本類中可見!

}

public void prit(){

System.out.println("nishuibaichuan");

}

}

由上代碼可知,當構造方法在其類中被私有化,那么就只能在其本類內部中實例化對象了!


 


查看完整回答
反對 回復 2019-03-09
  • 2 回答
  • 0 關注
  • 1550 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號