簡體   English   中英

新的xxxBorder()和Borderfactory方法之間的區別?

[英]Difference between new xxxBorder() and Borderfactory method?

之間有什么區別

setBorder(new TitledBorder(""));

setBorder(BorderFactory.createTitledBorder(""));

它們有哪些優點/缺點?

實際上, BorderFactory可能不會在每次調用時創建新實例,而是返回對現有實例的引用,從而節省了一些資源。 另請參見javadoc

如果您真的想知道BorderFactory內部正在發生什么,也可以查看實際的實現 ;-)

根據有效Java 條款1:考慮靜態工廠方法而不是構造函數 BorderFactory.createTitledBorder("")是靜態工廠方法,具有以下優點:

  1. 靜態工廠方法的一個優點是,與構造函數不同,它們具有名稱。
  2. 靜態工廠方法的第二個優點是,與構造函數不同,它們不需要在每次調用時都創建一個新對象。
  3. 靜態工廠方法的第三個優點是,與構造函數不同,它們可以返回其返回類型的任何子類型的對象。
  4. 靜態工廠方法的第四個優點是它們減少了創建參數化類型實例的冗長性。

有關詳細說明,請閱讀本書。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM