[問題] 什麼時候該用getInstance()?
public interface A{ void function(); }
public class B implements A{ void function(){ /*實作*/ } }
B只提供function()的實作 沒有任何變數
所以只需要一個instance讓大家共用就可以了
當然多生幾個instance出來也不會有問題
這種情況下應該讓B只有一個instance並用getInstance()取得呢
或者不必自找麻煩 用new的就好了
或是使用anonymous class 直接生出b讓大家用
public static final A b = new A(){ void function(){ /*實作*/ } };
請問以上三種方法哪一種比較好 以及為什麼?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.216.56.83
推
03/13 01:21, , 1F
03/13 01:21, 1F
推
03/13 01:21, , 2F
03/13 01:21, 2F
這裡用singleton pattern會比另外兩種方式好嗎?
因為每次都new()似乎只會多耗一點點記憶體
另外 假如把function宣告為static的會不會比較好?
※ 編輯: Kenqr 來自: 61.216.56.83 (03/13 01:53)
推
03/13 03:15, , 3F
03/13 03:15, 3F
→
03/13 14:03, , 4F
03/13 14:03, 4F
推
03/13 14:05, , 5F
03/13 14:05, 5F
討論串 (同標題文章)
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 1 之 6 篇):