Java物件導向

來源:互聯網
上載者:User

標籤:string   ring   scanner   關鍵字   大寫   ati   動作   作業   大小   

Java物件導向  
什麼是對象  
世界萬物皆為對象,凡是能看得見摸得著的所以東西都叫對象。對象是由屬性和行為組成,屬性是對象所具有的特徵,而行為是對象可以做的動作。  
>例如生活中常見的事物:汽車。汽車的品牌型號、顏色、軸距、車身大小等等都是汽車的屬性;汽車向前行駛、倒車、開門等動作都叫汽車的行為。
  
什麼是類  
類:具有相同屬性和行為一堆對象的集合或者叫抽象。  
>同學是一種類,是所有來學校上課同學的統稱,集合。  
>程式員是一種類,是所有參與程式編寫的員工的集合。  

類與對象的關係
類是對象的抽象,對象的類的執行個體。對象的每個屬性被表示為類中的一個成員變數,對象的每個行為成為類中的一個方法。  
>例如同學是一個類,張三就是同學類的一個執行個體,是一個對象。張三的姓名、年齡、成績等都是類的成員變數,而張三說話、行走、做作業等行為就是類的方法。  

代碼執行個體:
 
    public class Student {  //定義一個名為Student的類
        //定義成員變數name、age、javaScore  
        String name;        
        int age;
        double javaScore;
        public void say(){  //定義一個名為say的方法
            int age = 10;   //定義局部變數
            System.out.println("該學生姓名是:"+name+"\n該學生年齡是:"+age+"\n該學產生績是:"+javaScore);
        }
    }   
 
上述代碼中需要注意以下幾點:  
 
1. 類名首字要大寫,不能是關鍵字;  
2. static盡量少用,不必要的麻煩;  
3. 成員變數又叫全域變數,可以不用賦初始值,為預設值;
4. 局部變數必須賦初始值,另外局部變數只在方法域中起作用。

類的執行個體化  
我們在建立了一個類之後,就需要對類進行執行個體化,使用類,如下面代碼:  
  
    public static void main(String[] args) {
        Student stu = new Student();   //執行個體化一個Student類
        stu.name = "張三";             //給每一個屬性賦值
        stu.age = 18;
        stu.javaScore = 95;
        stu.say();                     //調用類的方法
    }  
上面代碼運行後的結果是:  
  
    該學生姓名是:張三  
    該學生年齡是:18   
    該學產生績是:95.0  
如果是儲存一組學生資訊,則需要用數組對Student類進行執行個體化,如下面代碼:  
   
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        Student[] stu = new Student[3];       //執行個體化長度為3的Student類數組,儲存3名同學資訊
        Student student = null;
        for (int i = 0; i < stu.length; i++) {
            student = new Student();
            System.out.println("請輸入學生姓名:");
            String name = s.next();
            System.out.println("請輸入學產生績:");
            double score = s.nextDouble();
            student.name = name;
            student.javaScore = score;
            stu[i] = student;
        }
        for (Student ss : stu){
            System.out.println("學生姓名:" + ss.name + "   成績是:" + ss.javaScore);
        }  
    }    
當我們輸入“張三、100、李四、90、王二、80”運行結果如下:  
  
    學生姓名:張三   成績是:100.0
    學生姓名:李四   成績是:90.0
    學生姓名:王二   成績是:80.0
棧、堆  
##棧與堆的區別  
1. 棧空間小,堆空間大;  
2. 所有的資料都是放在棧與堆裡面的;  
3. 棧運行快,對運行慢;  
4. 所有的基本類型以及引用變數本身都放在棧中;  
5. 引用所指向的對象都放在堆中;  
6. 運行方法都放在棧中,其中main方法放在最底層;  
7. 入棧的方法都要被執行,並遵行先入後出的原則。

Java物件導向

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.