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

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

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


    草之戒_
    posts - 2,comments - 14,trackbacks - 0
           Java編程思想是學習Java必讀之書,此書的內容跟名字一樣,主要是以思想為主,如果沒有編程經驗,此書確實有點不太適合你,如果你有C/C++編程經驗那這書正適合你,因為作者在內容中是以C/C++與Java作對比來學習的。如果你是直接學習Java可以先選擇Java核心技術來學習,這本書主要是以技術入門為主,雖然里面也同樣與C/C++作對比,但是學習起來會比Java編程思想要簡單的多。當你運用Java有一段時間后,一定要回過頭來學習Java編程這本書,因為它會讓你更進一步。
           在此次我的blog計劃中,會把Java編程思想每一張的筆記都記錄在blog中,我在經常在網上看到有人說Java編程思想講得有點啰嗦,確實我讀此書也有這種想法,所以在我的blog中我會盡量減少,只會出現有關Java和內容,會把作者描述的C/C++對比方面省略掉,當然這只是做一個參考,建議大家一定要去學習完整的Java編程思想。

    1.用引用操縱對象

           Java中一切都視為對象,但實際操作對象是一個“引用”(reference)標識符。
    這就如果,遙控器(引用)操作電視(對象)一樣,我們拿著遙控器就能與電視機保持連接。如果想要調整音量大小或者更換頻道時,我們實際上是操作的遙控器,再由控制器調控電視機。我們可以帶著控制器在房間四處走動,同樣也可以操作電視機。
    控制器和電視機是同時可以單獨存在的,沒有電視機,遙控器也可單獨存在。
    String s;
    在上面我們創建了一個String的引用,但它只是一樣引用,并未與任何一個對象相關聯,如果你嘗試向s發送消息,則會得到一個運行時異常,所以一種安全的做法是,在我們創建一個引用同時便為進行初始化。
    String s = "init";
    上面的String是Java中的一種特殊類型,所以可以直接使用帶引號的文本進行初始化,通常,必須對Java中的對象采用一種更通用的初始化方法。

    2.必須由自己創建所有的對象

           通常我們使用new操作符來創建一個對象。
    String s = new String("init");
    上面是創建一個String對象同時初始化并把該對象的引用賦值給s,此時s便是一個對象的引用(s并非是一個對象,只是一個引用)。

    2.1.存儲位置

           Java中有5個不同的數據存儲區:
           1).寄存器:它位于處理器內部是最快的存儲區。但寄存器極其有限,它是根據需求進行分配,我們不能直接操作也不能在程序中感覺到它的存在。
           2).堆棧:位于通用RAM(隨機訪問存儲器)中通過堆棧指針可以處理器哪里操作堆棧。指針向下移動則分配新的內存;若向上移動則釋放那些內存,速度公次于存儲器,但Java必須知道存儲在堆棧內所有項的確切生命周期,以便上下移動指針。這限制了程序的靈活性,所以只有某些Java數據存儲于堆棧中(對象的引用),Java對象并不存放于其中。
           3).堆:通用的內存池,用于存放所有的Java對象。存儲在堆里的數據編譯器不需要知道存活多長時間。當使用new創建一個對象時,會自動在堆里存儲分配。為了這種靈活性也犧牲更多的時間。
           4).常量存儲:常量通過直接存放于代碼的內部,因為他們永遠不會被改變。
           5).非RAM存儲:該存儲于程序之外,即使程序停止依然保持自己的狀態如(流對象,持久化對象)。對象轉化為字節流,發送給另一臺機器,“持久化對象”即對象被存儲于磁盤或者其他媒介上,在需要時可恢復常規對象。

    2.2.基本數據類型

           在Java中經常用到這樣一系列特殊對象的“基本類型”,new創建對象會存儲在“堆”里,如果是一些特別小的、簡單的類型,往往不是那么有效,在Java中提供一些不需要使用new創建變量,而是創建一個并非引用的“自動”變量。這個變量直接存儲“值”并存放于堆棧中。
           Java中的所有基本類型所占的存儲空間大小是固定的,不會因為硬件架構變化而變化。
          

    3.第一個Java程序

    package com.onlyeffort.java.concurrency;

    // 可替換為:import java.util.*;
    import java.util.Random;

    //定義一個公共類名為:HelloWorld
    public class HelloWorld {
        
    // main方法,程序的入口,結構不可變,主體可變
        public static void main(String[] args) {
            
    // body start..大括號開始
            
    // 創建一個對象
            HelloWorld hw = new HelloWorld();
            
    // 使用hw引用調用say方法
            System.out.println(hw.say());
            
    // body end..大括號結束
        }
        
    /**
         * 
         * 
    @return 返回一個字符串,并打出出值.
         
    */
        
    public String say() {
            Random rand 
    = new Random();
            
    return "Hello,World!" + rand.nextInt();
        }
    }
          第一行為包聲明語句,包名全為小寫,一般為域名的反轉形式,防止出現沖突,因為域名在全球是唯一的。
          當我們需要使用其它公共的類組件時需要使用import語句引入類。但java編譯器在每個Java文件編譯時會自動引用java.lang.*;下面的所有類,只是lang包下面的所有,但并不包含lang下面的子包,如果我們需要使用java.lang.reflect.Array;時,還需要我們手動引用。
          main方法是Java運行時程序的入口,結構單一不可改變。在main方法中我們創建了一個HelloWorld對象,并把它賦值給hw,此時hw是一個HelloWorld對象的一個引用,hw并非是一個對象。在后面我們調用了HelloWorld的say方法,此方法返回一個字符串,在say方法中,我們創建了一個隨機數,并把它與一個字符串相連接。rand.nextInt()方法會返回一個int類型的整數,這里Java編譯器會執行類型轉換,把int類型轉換為String類型并執行字符串連接。在最后我們使用了return語句返回這個方法的返回值。
          return在Java程序中有兩種作用,一:會結束當前方法(return;);二:返回某個方法的返回值(return value;)。
          在這個HelloWorld中出現了“//”、“/***/”這都是Java當中的注釋。Java編譯器編譯時會忽略注釋后面的所有內容。



    轉載時請注明轉載地址,onlyeffort.QQ:501276913
    posted on 2010-06-02 15:24 Aidan 閱讀(379) 評論(0)  編輯  收藏 所屬分類: JavaSE

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


    網站導航:
     
    編程部落   qq群:37996359(上限500人,一起關注java、討論技術,互相學習,共同進步)
    主站蜘蛛池模板: 国产在线观看免费完整版中文版 | 99精品视频免费| 免费一看一级毛片| 中文字幕中韩乱码亚洲大片| 在线看亚洲十八禁网站| 在线精品免费视频无码的| 亚洲精品美女网站| 久久久精品视频免费观看 | 国产成人免费手机在线观看视频| 国产亚洲?V无码?V男人的天堂| 亚洲视频在线免费看| 边摸边吃奶边做爽免费视频网站 | 免费看一级高潮毛片| 婷婷综合缴情亚洲狠狠尤物| 在线观看亚洲专区| 亚洲中文字幕成人在线| aa级毛片毛片免费观看久| 亚洲国产精品久久久天堂 | 亚洲精品不卡视频| 免费可以看黄的视频s色| 国产亚洲中文日本不卡二区| 日本人成在线视频免费播放| 777亚洲精品乱码久久久久久 | 亚洲成电影在线观看青青| 九九九国产精品成人免费视频| 久久不见久久见免费影院| 亚洲精品国产第一综合99久久| 国产成人精品免费午夜app| 亚洲国产熟亚洲女视频| 亚洲成?Ⅴ人在线观看无码| 亚洲国产精品无码久久久秋霞1 | 国产亚洲av片在线观看16女人 | 国产亚洲精品免费视频播放| 国产麻豆剧传媒精品国产免费| 91亚洲国产成人久久精品网址| 91成人免费观看在线观看| 91精品国产亚洲爽啪在线影院| 野花香高清视频在线观看免费 | 亚洲邪恶天堂影院在线观看| 无码国产精品一区二区免费虚拟VR | 国产成人精品免费午夜app|