類和對象

來源:互聯網
上載者:User

標籤:通過   訪問   相同   定義   數組   實現   pack   數列   student   

類:主觀抽象,是對象的模板,可以執行個體化對象。

習慣上類的定義格式:

package xxx;          import xxx;           public class Xxxx{    //屬性 ......;    //構造器 ......;    //方法 ......;}
  • 定義屬性:執行個體變數。

格式:[ 修飾符 ] 類型 變數名 [ = ? ]

執行個體變數定義在類中但在任何方法之外。

執行個體變數有預設值:各種各樣的0。(同數組)

執行個體變數的範圍至少在本類內部,受存取控制符的限制。

在重合範圍,執行個體變數和局部變數允許有命名衝突,“局部優先”。

  • 定義方法:

格式: [ 修飾符 ] 傳回型別 方法名( 參數列表 ) [ throws 異常 ] { ...... }

java中所有參數都是值傳遞。

當沒有值返回時,傳回型別必須被定義為void。

傳回型別必須與方法名相鄰,其他修飾符可以調換位置。

  • 構造器:

在建立對象的過程中調用的方法。

構造器沒有傳回型別。

構造器的名字與類名相同。

格式為:[ 修飾符 ] 類名( 參數列表 ){ },修飾符可以是private、 protected、 default、private

在一個對象的組建循環中構造器只用一次,由系統自動調用,不允許手工調用。

程式員沒有提供一個構造器,系統會自動提供一個無參的構造器。

  • 獲得對象的方式:

通過new(在堆空間中申請分配空間),new 類名(),可以通過這種形式獲得一個對象,這時的對象是無法使用,必須把他的地址存放進一個物件變數才能夠使用。

例如 :

    Car c=new Car();

注意:

最好在寫類時提供一個無參的構造器。

this關鍵字:

this是個隱式參數,代表當前對象;

    publie class Student{        private String name;        public void setName(String name){            this.name=name;        //this.name為當前對象的成員變數        }    }

如果某個構造方法的第一個語句具有形式this( ... ),那麼這個構造方法將調用同一類中的其他構造方法。

注意:

在構造器中this(...)必須放在該構造器的第一行。

this不能出現在靜態方法裡面。

類、對象、執行個體三者的關係:

1,類:是對象的模板,可以執行個體化對象。

2,對象:類的個體。

3,執行個體:實現的對象。

    student s;        s=new student();

其中 Student為類,s為對象,new Student()為執行個體,s賦值後也是執行個體了。

類和對象

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.