<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 39,  comments - 44,  trackbacks - 0

    JAVA_HOME:配置JDK的目錄
     CLASSPATH:指定到哪里去找運(yùn)行時需要用到的類代碼(字節(jié)碼)
     PATH:指定可執(zhí)行程序的位置
     
     LINUX系統(tǒng)(在" .bash_profile "下的環(huán)境變量設(shè)置)
      JAVA_HOME=/opt/jdk1.5.0_06
      CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
      PATH=$PATH:$JAVA_HOME/bin:.
      export JAVA_HOME CLASSPATH PATH     (將指定的環(huán)境變量聲明為全局的)
       
     windows系統(tǒng):
      右擊我的電腦-->屬性-->高級-->環(huán)境變量
      
    Java的運(yùn)行過程:
     編譯:生成可執(zhí)行文件,如C++中利用g++生成a.out,效率高,但不跨平臺
     解釋:解釋器把源文件逐行解釋,跨平臺但效率不高
     
     在java中:先編譯后解釋,把.java文件編譯成.class字節(jié)碼文件
      Java源代碼文件(.java文件)--->
      Java編譯器(javac)--->
      Java字節(jié)碼文件(.class文件,平臺無關(guān)的)--->
      Java解釋器(java),執(zhí)行Java字節(jié)碼

    Java的垃圾回收:
     由一個后臺線程gc進(jìn)行垃圾回收
     虛擬機(jī)判定內(nèi)存不夠的時候會中斷代碼的運(yùn)行,這時候gc才進(jìn)行垃圾回收
     缺點(diǎn):不能夠精確的去回收內(nèi)存
     java.lang.System.gc(); 建議回收內(nèi)存,但系統(tǒng)不一定回應(yīng),他會先去看內(nèi)存是否夠用,夠用則不予理睬,不夠用才會去進(jìn)行垃圾回收
     內(nèi)存中什么算是垃圾:
      不在被引用的對象(局部變量,沒有指針指向的)
      
    java的安全性:
     沙箱機(jī)制:只能做沙箱允許的操作
     通過下面環(huán)節(jié),實現(xiàn)安全
      加載有用的類文件,不需要的不加載
      校驗字節(jié)碼,查看允許的操作
       查看代碼和虛擬機(jī)的特性是否相符
       查看代碼是否有破壞性
       查看是否有違規(guī)操作,如越界
       查看類型是否匹配,類型轉(zhuǎn)換是否能正確執(zhí)行
       
    源程序:
     package mypack;  //相當(dāng)于一個目錄
     
     public class HelloWorld{
      public static void main(String[] args){
       System.out.println(“Hello World”);
      }
     }
     注:
      1、文件名必須和public修飾的類名一致,以.java作為文件后綴,如果定義的類不是public的,則文件名與類名可以不同。
      2、一個.java文件中可以有多個class,但是只有一個public修飾的類。
      3、java源代碼文件編譯后,一個類對應(yīng)生成一個.class文件
      4、一個java應(yīng)用程序應(yīng)該包含一個main()方法,而且其簽名是固定的,它是應(yīng)用程序的入口方法,可以定義在任意一個類中,不一定是public修飾的類
      編譯:javac -d . HelloWorld.java
       含有包的類,在編譯的時候最好用上面的格式,-d指的是讓該類生成的時候按照包結(jié)構(gòu)去生成," . "指的是在當(dāng)前路徑下生成
       如果不用上面的格式,也可以用javac HelloWorld.java,但是需要注意的是包結(jié)構(gòu)就要由自己去建立,然后將生成的.class文件放到該目錄下
      執(zhí)行:java mypack.HelloWorld
       將字節(jié)碼文件交給Java虛擬機(jī)去解釋執(zhí)行
       需要注意的事,必須使用包名.類名去解釋執(zhí)行
       
    包(package):把源文件放在目錄下
     由于工程的需要,將不同的源文件放在不同的目錄下,從而引入了包。
     包可以看作就是一個存放java源文件的目錄。
     在源碼中聲明一個包名:package p;(只能放在第一行,且最多只能是一行)
     如果指定多層包,那么在包名之間我們可以用.作為分隔符:package p1.p2.p3.p4;
     用“javac HelloWorld.java –d 絕對路徑”,編譯后生成的字節(jié)碼文件就會放在指定的包結(jié)構(gòu)下
     執(zhí)行該程序需要用" java 包名.類名 "
     引進(jìn)包中的某個類:import 包名.類名;
     引進(jìn)包中的所有類:import 包名.*;
       
    注釋:
     // 單行注釋, 到本行結(jié)束的所有字符會被編譯器忽略
     /* */ 多行注釋,  在/*  */之間的所有字符會被編譯器忽略
     /**  */   文檔注釋, java特有的,在/**  */之間的所有字符會被編譯器忽略
     可以用javadoc把java源程序中這種注釋抽取出來形成html頁面(只有寫在包,類,屬性,方法,構(gòu)造器,引入之前的注釋才可以進(jìn)行抽取)
        
    標(biāo)識符:
     命名規(guī)則:
      (1) 由字母、數(shù)字、下劃線、$組成,不能以數(shù)字開頭
      (2) 大小寫敏感
      (3) 不得使用java中的關(guān)鍵字和保留字
     
     關(guān)鍵字:都是小寫的,jdk1.2多了strictfp(經(jīng)準(zhǔn)浮點(diǎn)型),關(guān)鍵字 jdk1.4多了assert(斷言)關(guān)鍵字,  jdk1.5多了enum(枚舉) 關(guān)鍵字
      隨著學(xué)習(xí)進(jìn)度,會慢慢接觸到的
      true、false、null嚴(yán)格說不應(yīng)該算關(guān)鍵字,應(yīng)稱其為保留字更合適
     
     習(xí)慣:
      (1) 標(biāo)識符要符合語義信息
      (2) 包名所有字母小寫
      (3) 類名每個單詞首字母大寫,其它小寫 //TarenaStudent
      (4) 變量和方法:第一個單詞小寫,從第二個單詞開始首字母大寫 //tarenaStudent
      (5) 常量:所有字母大寫,每個單詞之間用" _ "連接
      
    基本數(shù)據(jù)類型:8種
     1) 整型
      byte       1B  8位       -128到127
      short      2B  16位      -2^15到(2^15)-1
      int          4B  32位      -2^31到(2^31)-1
      long        8B  64位      -2^63到(2^63)-1
     2) 浮點(diǎn)類型
      float        4B   32位      
      double     8B   64位
     3) 字符類型
        char       2B 16位  
     4) 布爾型  1B
      boolean    false/true
      
     注:
      1、Java中的自動類型提升問題。
       1)、正向過程:從低字節(jié)到高字節(jié)可以自動轉(zhuǎn)換。
        byte->short->int->long->float->double
       2)、逆向過程:從高字節(jié)到低字節(jié)用強(qiáng)制類型轉(zhuǎn)換。
        例:int a = (int)4.562;
        注:逆向轉(zhuǎn)換將丟失精度。
       2、boolean:只有true和false。
       3、char:Java中用" \u四位十六進(jìn)制的數(shù)字 (即使在注釋中出現(xiàn)\u,后面如果跟的不是4個數(shù)字,也會報錯)"表示將字符轉(zhuǎn)換成對應(yīng)的unicode編碼,字符類型要用單引號括起來。
       4、黙認(rèn)浮點(diǎn)類型為double,float數(shù)據(jù)類型有一個后綴為" f "或" F "。
       5、long類型有一個后綴,為" l " 或者" L "
     
    引用數(shù)據(jù)類型:
     類、接口、數(shù)組
     引用類型 變量名 = new 引用類型名(參數(shù));  //new后面一般跟的都是類的構(gòu)造器
     成員:寫在類體括號里面的
     
    內(nèi)存空間的分配:
     內(nèi)存分為:
      棧:存放簡單數(shù)據(jù)類型變量(值和變量名都存在棧中),存放引用數(shù)據(jù)類型的變量名以及它所指向的實例的首地址
      堆:存放引用數(shù)據(jù)類型的實例

    posted on 2008-10-14 19:44 礦礦 閱讀(429) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲中文无码亚洲人成影院| 亚洲国产成人资源在线软件| 国产亚洲精品成人久久网站| 国产一卡2卡3卡4卡无卡免费视频| 亚洲人成在线播放网站岛国| 国产免费AV片在线观看| 国产成人综合亚洲亚洲国产第一页| 一级做a爰黑人又硬又粗免费看51社区国产精品视| 午夜神器成在线人成在线人免费 | 亚洲国产精品久久久久网站| 久久www免费人成精品香蕉| 中文字幕第一页亚洲| 在线看片免费人成视频福利| 久久青青成人亚洲精品| 久久午夜羞羞影院免费观看| 亚洲最大免费视频网| 一个人免费观看在线视频www| 亚洲欧美不卡高清在线| 免费又黄又硬又爽大片| 国产福利免费视频 | 最近免费字幕中文大全视频| 亚洲国产成人久久| 午夜私人影院免费体验区| 杨幂最新免费特级毛片| 亚洲精品无码av人在线观看| h视频在线观看免费网站| 亚洲精品无码成人| 亚洲性久久久影院| 精品无码人妻一区二区免费蜜桃| 91亚洲性爱在线视频| 国产成人免费片在线视频观看| 免费大片av手机看片高清| 亚洲人成在线观看| 性色av免费观看| 国产免费福利体检区久久| 亚洲视频在线免费看| 四虎在线播放免费永久视频| 免费无码作爱视频| 亚洲精品无码日韩国产不卡av| 久久久久久A亚洲欧洲AV冫| 国产在线jyzzjyzz免费麻豆 |