類:java
咱們說Java是一種面向對象的編程語言,對象是現實生活中某個個體。那麼類就是某種個體事物的描述。怎麼描述的呢? 就是把某種對象共有的特性拿出來了。好比說 人就是一個類,人都有姓名,身高,體重,×××號。那麼某一我的就是一個對象。好比說人有姓名,性別,年齡等等。這就把人給描述出來了 那咱們說人就是一種類。而相對於一個叫張三,性別爲男 年齡23 的人來講 張三就是一個對象。編程
在Java中類用class 關鍵字來定義編程語言
class People{ide
}函數
而對象就是咱們 使用new 關鍵字來實例化(定義一個新的對象)學習
People 張三 = new People();spa
張三就是咱們新建立的一個對象 對於人的問題裏 也就是說咱們新建立出一我的出來orm
其實咱們在解決問題的時候 會遇到各類事物 咱們會建立不少的類出來,類還能夠說是一種類型,好比說人 就是一種類型,人類型。對象
咱們說過類就是描述某種事物的特徵和狀態的(成員變量和成員方法)。那麼咱們先說特徵,特徵說白了某種事物的基本屬性 咱們拿歌曲來講 歌曲裏有 歌手(誰唱的) ,多長時間等等。咱們就能夠建立一個歌曲的類(也就是類型)blog
class Music{
String name;//名字
String singer;//歌手
int time;//時間
}
那麼當我新建立一個歌曲的對象的時候,咱們就能夠經過這個對象來給這個對象的特徵賦值
Music music = new Music();
music.name = 「練習」;
music.singer = 「劉德華」;
music.tiem = 200;
咱們這就建立一個 劉德華唱的 時間爲200的一首歌。咱們之後還會學習用構造器(也就是構造方法)來初始化對象的屬性(先用music.name = 「練習」;這種方法來給對象的屬性賦值)
咱們在來講說狀態也就是(方法或函數)
好比說歌曲
歌曲有 播放 暫停 狀態
咱們能夠這麼定義
class Music{
String singer;//歌手
int time;//時間
public void play(){//播放狀態
}
Public void suspend(){//暫停狀態
}
}
那麼咱們新建立一個對象
Music music = new Music();
music.name = 「練習」;
music.singer = 「劉德華」;
music.tiem = 200;
music.play();
music. Suspend();
當咱們的代碼執行到music.play();如今名字叫練習這首歌曲對象就會變成播放狀態 下一行同理當執行了music. Suspend();時練習這首歌曲對象就會從播放狀態變爲暫停狀態,這就是行爲
說白了就是歌曲能幹什麼。那麼有人可能會說歌曲是用來聽的 可是聽這個動做是人產生的 對於歌曲來講,只能播放,暫停,中止之類的動做。咱們要明白是什麼產生的動做。
對象:
說到了對象 咱們就要說一下對象的引用,咱們建立了一個新的對象好比
String s =new String(「aaa」);
那麼說 這個s 並非這個對象 知識aaa這個對象的引用 在內存中會給s開闢一塊內存
aaa 開闢一塊內存 s 存儲的是 aaa的地址 如圖
Java中提供了許多現成的類型 你還能夠本身建立類型(類)
特例:基本數據類型
在程序的編寫時,咱們常常會用到某種類型,咱們用到它們的時候多了。就須要特殊的對待。因此說基本類型就被創造出來。也就是說不用new關鍵字來建立變量 而是直接用變量來儲存值這樣會更有效率。
對象的做用域:
在C中對象的做用域 是用花括號來識別的 可是在Java中不同好比
{
String s = new String(「adsa」);
}
在這個花括號以外知識這個對象的引用s 消失了 而s指向的String對象還在內存之中 只是咱們沒法訪問到這個對象了而已 在之後的學習java中你會來到 對象引用的傳遞和複製 就能夠解決這個問題了。