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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

java 的构造函数修饰符public private protected

發布時間:2025/3/12 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 的构造函数修饰符public private protected 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

java中使用new關鍵字創建對象的時候,構造方法上的修飾符起什么作用?

1,限定可以創建對象的位置

使用public 修飾,new對象時,可以在任何包下的任何類中。

使用protected修飾,只能在當前類,或者同一包下創建對象。

使用private修飾,只能在當前類中創建對象。

2,使用不同修飾符修飾構造函數有啥作用?

public修飾,不限定對象啥時候在什么地方創建。

protected修飾,限制對象創建范圍到同一個包下,當需要外部去創建對象,但是又不想所有使用的地方都能創建。可以使用protected修飾構造方法

private修飾,只能本類創建對象,進一步縮小對象能創建的地方,如果外部需要使用類對象時,提供一個返回當前類對象的接口【必須是public,且 static 修飾】,設計模式之單例模式就是構造函數私有化。

對于類的設計者來說,如果想要類對象的創建由自己把控,可以使用private構造函數,或者 protected 構造函數。


No visible constructors in class

下面的錯誤是我構造一個工廠類時候報的錯誤,百度了一圈發現網上也有類似的錯誤都是構造工廠類時候報出,但是錯誤不相同,最后還是靜下心來看看報錯的錯誤,從上往下看,一不小心看到如下錯誤:
Caused by: java.lang.IllegalArgumentException: No visible constructors in classcom.liulangtao.frame.demo.config.elasticSearch.ElasticSesrchClientFactory
翻譯過來就是java.lang.IllegalArgumentException引起錯誤,沒有ElasticSesrchClientFactory的構造函數。這樣小編瞬間就理解了果斷將ElasticSesrchClientFactory的構造函數的private修改為public ,重啟服務瞬間好了。

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2021-11-22 11:38:22.267 ERROR 3404 --- [ main] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'elasticSesrchClientFactory' defined in file

總結

以上是生活随笔為你收集整理的java 的构造函数修饰符public private protected的全部內容,希望文章能夠幫你解決所遇到的問題。

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