第1條 考慮用靜態工廠方法代替構造器

2021-07-11 07:57:41 字數 903 閱讀 8579

/**

* 第1條:考慮用靜態工廠方法代替構造器

* 優點:

* 1.靜態工廠方法有名稱;

* 2.不必每次呼叫的時候都建立乙個新的物件

* 3.可以返回型別的任何子型別的物件

* 4.在建立引數化型別例項的時候,使**更加簡潔

* 缺點:

* 1.類如果不含有共有的或者受保護的構造器,就不能被子類化

* 2.與其他的靜態方法實際上沒有任何區別

* */

public

class

services

private

static

final mapproviders = new concurrenthashmap();

public

static

final string default_provider_name = "";

public

static

void

registerdefaultprovider(provider provider)

public

static

void

registerprovider(string name, provider provider)

public

static service newinstance()

public

static service newinstance(string name)

}

public

inte***ce provider

public

inte***ce service

1 考慮用靜態工廠方法代替構造器

1.考慮用靜態工廠方法代替構造器 例子 public static boolean valueof boolean b 使用靜態工廠替代構造器的優勢 1 他們有名稱 2 不必每次呼叫都產生新的物件 3 可以返回原返回型別任何子型別的物件 4 建立引數化型別例項的時候,使 更簡潔 缺點 1 類如果不含...

條目1 考慮使用靜態工廠方法代替構造方法

body body first child body last child p,blockquote,ul,ol,dl,table,pre h1,h2,h3,h4,h5,h6 h1 tt,h1 code,h2 tt,h2 code,h3 tt,h3 code,h4 tt,h4 code,h5 tt,...

第一條 考慮用靜態工廠方法代替構造器

獲取類的例項,類可以提供乙個公有的構造器,還可以提供乙個公有的靜態工廠方法 static factory method 它只是乙個返回類的例項的靜態方法。例如 public static boolean valueof boolean b 注意,這裡的靜態工廠方法與設計模式中工廠方法模式不同,使用靜...