簡體   English   中英

避免靜態初始化程序的最佳策略

[英]Best strategy to avoid static initializer

我正在將一些遺留代碼遷移到新平台,而舊版平台具有靜態初始化程序。 喜歡

private final static long var;

static {
 var = Long.parseLong(System.getProperty("var.proerty"));
}

我想在我的新代碼中避免這種情況。 有人可以告訴我什么是避免它的最佳策略。 我可以簡單地將var創建為靜態變量並同時初始化它。 喜歡

private final static Long var = Long.parseLong(System.getProperty("var.proerty"));

你的問題的答案我可以簡單地創建var作為實例變量並初始化它嗎? 是的 :是的

private final static String var = System.getProperty("var.property");

是一種完全可以接受的初始化形式。

注意StringLong - System.getProperty()返回一個String,如果你想要的話,你必須將它轉換為Long。

也就是說,使用靜態初始化程序塊還有其他充分的理由,例如創建和填充更復雜的數據結構。

暫無
暫無

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

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