wangflood

          精心維護一個技術blog,為了工作,也是愛好。

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            14 Posts :: 19 Stories :: 8 Comments :: 0 Trackbacks
          我依然記得,曾經在聽馬士兵的J2SE的課程時,講到regex時,有個方法叫"lookat",一向溫和的馬兄大怒,說SUN這個后知后覺的土鱉,這個名字取得多么垃圾。這個的人還混在sun里面,可以想見sun里面有多少這樣的貨色。又一年,sun被oracle收購,我大驚馬士兵的預見性
          后來我在讀<<thinking in java>>時,發現Bruce,也在罵SUN。居然罵的話和馬士兵一樣
          這么當然是馬士兵抄襲了。技術員也就這么點樂。無語。。。。。。
          不要相信那誰誰的。只穿一手鞋,我后來想。似乎此話也引自馬士兵,不知馬士兵引自誰的。
          從研究源碼開始吧。。。。。。
          /**
           * 
           
          */
          package com.wang.test;

          import java.io.BufferedReader;
          import java.io.File;
          import java.io.FileInputStream;
          import java.io.IOException;
          import java.io.InputStreamReader;
          import java.io.PrintStream;
          import java.nio.channels.Channel;
          import java.util.Calendar;
          import java.util.Iterator;
          import java.util.Map;
          import java.util.Map.Entry;
          import java.util.Properties;
          import java.util.Set;

          /**
           * 
          @author Sam Wang
           * 
          @since Mar 22, 2011
           
          */
          public class TestSystem {

              
          public static void main(String[] args) throws IOException {

                  
          // java居然可以打印錯誤。很少用到。Console下是紅色的。估計java.util.logger是在其上包裝的。
                  System.err.println("err");
                  
          // 得到系統的環境。
                  Map<String, String> envs = System.getenv();
                  Set
          <Entry<String, String>> sets = envs.entrySet();
                  
          for (Iterator<Entry<String, String>> iterator = sets.iterator(); iterator
                          .hasNext();) {
                      Entry
          <String, String> entry = (Entry<String, String>) iterator
                              .next();
                      System.out.println(entry.getKey().toLowerCase() 
          + ":"
                              
          + entry.getValue().toLowerCase());

                  }
                  
          // 得到系統的Properties,大致的打印情況和getenv()差不多。
                  Properties props = System.getProperties();
                  System.out.println(props);

                  
          // 安全管理,神馬玩藝。
                  SecurityManager man = System.getSecurityManager();
                  
          // 對于特定的數字,打印的HashCode是一樣的。
                  
          // 有時間再了解了解HashCode
                  System.out.println(System.identityHashCode(0));// 19621457

                  
          // 這個Channel就是java.nio里面的。用作流處理的一類的東西的。
                  
          // 大致上和Input,System.io相關。
                  Channel channel = System.inheritedChannel();
                  
          // 得到系統以long形式表示的當前時間。
                  long time = System.nanoTime();
                  System.out.println(time);
                  Calendar c 
          = Calendar.getInstance();
                  c.setTimeInMillis(time);
                  System.out.println(c.getTime());

                  
          // 不太常見,表示不理解
                  System.runFinalization();

                  
          // System.err的包裝。
                  System.setErr(new PrintStream(new File("err.txt")));
                  System.err.println(
          "我犯錯了。");
                  System.setOut(
          new PrintStream(new File("out.txt")));
                  System.out.println(
          "turn console to out.txt");

                  
          // System.in的包裝。
                  System.setIn(new FileInputStream("film.txt"));
                  InputStreamReader isr 
          = new InputStreamReader(System.in);
                  BufferedReader br 
          = new BufferedReader(isr);
                  String str 
          = "";
                  
          while ((str = br.readLine()) != null) {
                      System.out.println(str);
                  }

                  Properties prop 
          = new Properties();
                  
          // prop.load(new FileReader("test.properties"));
                  prop.loadFromXML(new FileInputStream("prop.xml"));
                  
          // 這個也沒什么用,得到系統配置,然后由系統設到一個prop.xml中。
                  
          // 其實也可以手動做。
                  
          // 有些人就是懷疑系統(JVM)是不是能給我們做更多的事。
                  
          // 其實系統不完美。
                  System.setProperties(prop);
                  Properties props2 
          = System.getProperties();
                  System.out.println(props2);

                  
          // 見名知義。這個方法參數我都不想填了。
                  
          // Sytem類肯定是java開發api時最先想到要開發的類了。
                  
          // 這個方法放在System里面
                  
          // 而不是在Arrays里面。是個歷史遺留問題。
                  
          // System.arraycopy(src, srcPos, dest, destPos, length)

              }
          }




          posted on 2011-03-30 17:52 wangflood 閱讀(308) 評論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 上高县| 黄骅市| 东安县| 太仓市| 镇雄县| 油尖旺区| 东丽区| 凤阳县| 平谷区| 云龙县| 高州市| 潞城市| 东莞市| 辛集市| 鲁山县| 库尔勒市| 德江县| 桐庐县| 门头沟区| 桑日县| 商都县| 罗源县| 太白县| 镶黄旗| 洪泽县| 资源县| 荔浦县| 定日县| 渭源县| 车险| 海淀区| 曲沃县| 滦平县| 盘山县| 镇江市| 航空| 雷山县| 石狮市| 商都县| 新龙县| 云霄县|