無線&移動互聯網技術研發

          換位思考·····
          posts - 19, comments - 53, trackbacks - 0, articles - 283
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          靜態代碼塊 & 靜態方法

          Posted on 2009-06-12 11:49 Gavin.lee 閱讀(886) 評論(0)  編輯  收藏 所屬分類: java SE & EE

          靜態代碼塊:

          用途:主動執行,在類裝載時執行一次,只執行一次,用于常用數據的初始化等

          靜態方法:

          用途:被動執行,通過類名直接調用,不需要通過類的實例調用,可用于實現類的共性動作


           靜態方法,這里就不啰嗦了,估計很多人看了這個解釋也接差不多了解這兩個的用法了。呵,還是說說我的具體實踐吧。有些時候,我們的項目里會有很多的配置文件,典型的,多合作平臺情況下,就會有亂七八糟的properties,在我們的項目也是會頻繁的去讀取啊什么的。效率肯定不用說了:低下。那么有什么好的辦法嗎?  回答是肯定的。呵,啰嗦了這么多,其實這里主要用來將配置文件初始化的。一個類里可以有多了靜態代碼塊。初始化后就能直接在項目需要時候直接調用了,給個簡單的例子:
          package yixun.wap.resourcesload;

          import yixun.wap.tools.ResourceLoader;

          public class ICBC {

              
          private static String interfaceName;
              
          private static String interfaceVersion;
              
          private static String curType;
              
          private static String merID;
              
          private static String merAcct;
              
          private static String Language;
              
          private static String merURL;
              
          private static String keyaddress;
              
          private static String keypassword;
              
          private static String crtaddress;
              
          private static String publiccrt;
              
          private static String crtpassword;

              
          static {
                  ResourceLoader resource 
          = new ResourceLoader("ICBC");
                  interfaceName 
          = resource.getString("interfaceName");
                  interfaceVersion 
          = resource.getString("interfaceVersion");
                  curType 
          = resource.getString("curType");
                  merID 
          = resource.getString("merID");
                  merAcct 
          = resource.getString("merAcct");
                  Language 
          = resource.getString("Language");
                  merURL 
          = resource.getString("merURL");
                  keyaddress 
          = resource.getString("keyaddress");
                  keypassword 
          = resource.getString("keypassword");
                  crtaddress 
          = resource.getString("crtaddress");
                  publiccrt 
          = resource.getString("publiccrt");
                  crtpassword 
          = resource.getString("crtpassword");
              }



              
          // 省略了 getter setter
              
          }



          都說到這份上了,用的時候就直接ICBC.getXX() 就OK了。
           
          PS: ResourceLoader 是自己的工具類,見這里 http://www.aygfsteel.com/jzone/articles/280385.html
          主站蜘蛛池模板: 顺平县| 涿州市| 舞钢市| 华容县| 房产| 乡城县| 团风县| 行唐县| 鱼台县| 巴彦淖尔市| 萨嘎县| 丽水市| 昭平县| 华阴市| 繁峙县| 克什克腾旗| 太仆寺旗| 云浮市| 两当县| 嘉黎县| 宜宾市| 堆龙德庆县| 凤山县| 安阳县| 九江市| 开鲁县| 彩票| 堆龙德庆县| 九龙坡区| 剑阁县| 新沂市| 弥勒县| 宜兴市| 阆中市| 华安县| 安平县| 池州市| 红河县| 区。| 板桥市| 宣城市|