欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java私有構(gòu)造函數(shù)作用原理解析

 更新時(shí)間:2019年12月18日 14:32:57   作者:銀色飛行船  
這篇文章主要介紹了Java私有構(gòu)造函數(shù)作用原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了Java私有構(gòu)造函數(shù)作用原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

1. 強(qiáng)調(diào)類(lèi)的單例模式

public class Elvs {
  //公有的靜態(tài)域,來(lái)說(shuō)明該類(lèi)只能有一個(gè)實(shí)例(實(shí)例化一次后,后面都是同一個(gè)實(shí)例)
  public static final Elvs INSTANCE=new Elvs();  
  private Elvs(){}//將構(gòu)造函數(shù)定義為私有變量后,就不能在外部去調(diào)用構(gòu)造函數(shù)實(shí)例化類(lèi)了
  public void sys() {
    System.out.println("******");
  }
}
public class Main {  
  public static void main(String[] args){
    Elvs elvs=Elvs.INSTANCE;
    elvs.sys();
  }
}

注意上面的代碼中,在其他的外部類(lèi)中去實(shí)例化Elvs時(shí),只能通過(guò)靜態(tài)變量INSTANCE

public class Elvs {
  private static final Elvs INSTANCE = new Elvs();
  private Elvs() {}
  public static Elvs getInstance() {return INSTANCE;}
  public void sys() {
    System.out.println("******");
  }
}
public class Main {  
  public static void main(String[] args){
    Elvs elvs=Elvs.getInstance();
    elvs.sys();
  }
}

根據(jù)靜態(tài)方法來(lái)獲取類(lèi)的實(shí)例,也是只能獲取一個(gè)實(shí)例,實(shí)現(xiàn)單例模式

2. 通過(guò)類(lèi)的私有構(gòu)造函數(shù)來(lái)強(qiáng)調(diào)類(lèi)的不可實(shí)例化

例如在實(shí)際的應(yīng)用中,工具類(lèi),或者整個(gè)工程的常量類(lèi),在類(lèi)中只有靜態(tài)常量,

這時(shí)我們可以在類(lèi)中去定義一個(gè)私有的構(gòu)造函數(shù),然后在類(lèi)中不去調(diào)用它,這樣

在其他的類(lèi)處就不能實(shí)例化這個(gè)常量類(lèi)了。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java數(shù)據(jù)結(jié)構(gòu)之鏈表的增刪查改詳解

    Java數(shù)據(jù)結(jié)構(gòu)之鏈表的增刪查改詳解

    在這篇文章中,小編將帶大家了解一下Java數(shù)據(jù)結(jié)構(gòu)中鏈表的增刪查改(以下結(jié)果均在IDEA中編譯)希望在方便自己復(fù)習(xí)的同時(shí)也能幫助到大家
    2022-09-09
  • java 將 list 字符串用逗號(hào)隔開(kāi)拼接字符串的多種方法

    java 將 list 字符串用逗號(hào)隔開(kāi)拼接字符串的多種方法

    這篇文章主要介紹了java 將 list 字符串用逗號(hào)隔開(kāi)拼接字符串,本文給大家分享四種方法,每種方法通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • Java 深入探究講解抽象工廠模式

    Java 深入探究講解抽象工廠模式

    當(dāng)系統(tǒng)所提供的工廠所需生產(chǎn)的具體產(chǎn)品并不是一個(gè)簡(jiǎn)單的對(duì)象,而是多個(gè)位于不同產(chǎn)品等級(jí)結(jié)構(gòu)中屬于不同類(lèi)型的具體產(chǎn)品時(shí)需要使用抽象工廠模式,抽象工廠模式是所有形式的工廠模式中最為抽象和最具一般性的一種形態(tài)
    2022-04-04
  • Lombok為啥這么牛逼?SpringBoot和IDEA官方都要支持它

    Lombok為啥這么牛逼?SpringBoot和IDEA官方都要支持它

    Lombok是一款Java代碼功能增強(qiáng)庫(kù),在Github上已有9.8k+Star。這篇文章主要介紹了Lombok為啥這么牛逼?SpringBoot和IDEA官方都要支持它,需要的朋友可以參考下
    2020-12-12
  • Java 實(shí)戰(zhàn)項(xiàng)目之小說(shuō)在線閱讀系統(tǒng)的實(shí)現(xiàn)流程

    Java 實(shí)戰(zhàn)項(xiàng)目之小說(shuō)在線閱讀系統(tǒng)的實(shí)現(xiàn)流程

    讀萬(wàn)卷書(shū)不如行萬(wàn)里路,只學(xué)書(shū)上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+SSM+jsp+mysql+maven實(shí)現(xiàn)前臺(tái)閱讀后臺(tái)管理的小說(shuō)在線閱讀系統(tǒng),大家可以在過(guò)程中查缺補(bǔ)漏,提升水平
    2021-11-11
  • 搭建簡(jiǎn)單的Spring-Data JPA項(xiàng)目

    搭建簡(jiǎn)單的Spring-Data JPA項(xiàng)目

    本文主要介紹了搭建簡(jiǎn)單的Spring-Data JPA項(xiàng)目,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Spring中@Autowired和@Qualifier注解的3個(gè)知識(shí)點(diǎn)小結(jié)

    Spring中@Autowired和@Qualifier注解的3個(gè)知識(shí)點(diǎn)小結(jié)

    這篇文章主要介紹了Spring中@Autowired和@Qualifier注解的3個(gè)知識(shí)點(diǎn)小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 深入理解以DEBUG方式線程的底層運(yùn)行原理

    深入理解以DEBUG方式線程的底層運(yùn)行原理

    說(shuō)到線程的底層運(yùn)行原理,想必各位也應(yīng)該知道我們今天不可避免的要講到JVM 了。其實(shí)大家明白了Java的運(yùn)行時(shí)數(shù)據(jù)區(qū)域,也就明白了線程的底層原理,今天帶著大家一步一步DEBUG,來(lái)看看線程到底是怎么運(yùn)行的,順便把IDEA的DEBUG方法簡(jiǎn)單講一下
    2021-06-06
  • SpringBoot項(xiàng)目中使用Groovy腳本的示例代碼

    SpringBoot項(xiàng)目中使用Groovy腳本的示例代碼

    本文主要介紹了SpringBoot項(xiàng)目中使用Groovy腳本的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Java使用JDBC連接Oracle_MSSQL實(shí)例代碼

    Java使用JDBC連接Oracle_MSSQL實(shí)例代碼

    這篇文章主要介紹了Java使用JDBC連接Oracle_MSSQL實(shí)例代碼,需要的朋友可以參考下
    2014-01-01

最新評(píng)論