promotion image of download ymail app
Promoted
harry 發問時間: 電腦與網際網路程式設計 · 8 年前

字串 String,是屬於原始資料型態,還是非原始資料型態?

字串 String,是屬於原始資料型態,還是非原始資料型態?為什麼?

可以說比較簡單易點麼嗎?之前的有一點看不懂==

1 個解答

評分
  • 8 年前
    最佳解答

    String 字串屬於參考資料型別(String 可查API 是一個類別)

    基本資料型態只有8種

    基本型別為: byte, short, int,long, float, double,boolean, char等8種其他皆為參考資料型別~~基本型別宣告時可直接設定初始值-而參考型別要使用new 方式去建立物件實體及設初始值

    java中資料型態差異存放電腦中媒體位置如下說明

    Global-儲存媒體:

    存放著被宣告為 static 的類別成員變數。

    是屬於這個(CLASS)類別的,並不會因為另外建立出一個新物件時

    而配置一個新的類別成員變數供該物件存取。這裡變數一經設定

    不可再改變,並不屬於物件即是全域的類別成員 。

    圖片參考:http://i230.photobucket.com/albums/ee25/chihlucy/j...

    Stack-儲存媒體:

    是存放Java中宣告為基本資料型別(Primitive Type)的變數內容。

    或存放物件變數的參考內容值(object reference variable)的地方。

    當新的宣告產生時,stack 將有指標直接指向該變數,所以在存取該變數資料內容時的處理速度較快。如下圖

    圖片參考:http://i230.photobucket.com/albums/ee25/chihlucy/j...

    Heap-儲存媒體:

    存放被宣告為參考資料型別(Reference Type)的物件實體,

    但該物件的參考內容值(object reference variable)是存放在 stack 中。

    一般來說,在 Heap 中儲存的資料沒有一定限制,

    但盲目與不當的使用很容易造成記憶體空間與存取時間的浪費 。如下圖

    圖片參考:http://i230.photobucket.com/albums/ee25/chihlucy/j...

    (二)JAVA的資料型別分為:基本資料型別,参考資料型別在Java中定義了八種基本的資料型態,(除ㄌ這8種其他的都屬參考資料型別 )而參考資料型別是屬於物件只要是物件~要建立時就必須使用new的方法來產生實體,例如: 字串(String)即是參考型別。

    註: String 在javaSE6.0 版中有String精簡宣告方式如下

    String x ="java" ;

    雖省略ㄌ new 去建立實體但實際上仍是參考型別

    所以用下方宣告也是可以的

    String x = new String("java");

    這與上方精簡宣告是相同的 請參考下方網址中詳細說明及運算元的解說

    http://www.wretch.cc/blog/hopopo923/10950925

    參考資料: 加菲貓
    • Commenter avatar登入以對解答發表意見
還有問題?馬上發問,尋求解答。