標籤: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物件導向