對象-Java
-
C++三種建立對象的方式
1.在棧中建立局部對象
2.在靜态區中建立全局對象
3.在堆中 建立對象(堆對象)
- Java隻有上述方式的第三種,即建立堆對象
Java的MyDate類
class MyDate
{
private int year,month,day;//資料成員,執行個體變量
public void Show()//函數成員,方法
{
System.out.printf
("%d-%d-%d",year,month,day)
}
}
public class Main
{
public static void main(String args[])
{
MyDate = null;//null 空指針
d = new MyDate(); //申請空間,建立對象
d.Show(); //d是指針變量,
}
}
\\空指針+申請空間可合并寫成
MyDate d = new MyDate();
無構造方法采用預設構造方法
- 在Java中定義變量的重要規則
- Java語言嚴格區分基本類型和構造類型
- Java的基本類型隻有8種:byte,short,int,long,float,double,char,boolean
- 定義基本類型的變量是變量自身
- 基本類型以外的類型都是構造類型
- 數組、類是構造類型
- 定義構造類型的變量是指針變量,且初值為null
class MyDate
{
private int year,month,day;//資料成員,執行個體變量
public MyDate(int y,int m,int d)
{
year = y;
month = m;
day = d;
} //添加構造方法
public void Show()//函數成員,方法
{
System.out.printf
("%d-%d-%d",year,month,day)
}
}
public class MyClass
{
public static void main(String args[]) //靜态方法
{
MyDate d;
d = new MyDate(1949,10,1); //申請空間,建立對象
d.Show(); //d是指針變量,
}
}

//Java語言既沒有“析構方法”也沒有delete指令
對象由系統自動回收
小結
單個源檔案的Java程式由若幹個類構成,其中僅有一個類加以public修飾(此前我們成為Java程式的架構)。并且:
1.該類的名字必須與檔案名相同
2.該類中有且隻有一個規定格式的main方法
構造函數又稱構造方法,Java語言沒有析構方法
用Java的類定義變量,實際得到的是指針變量,預設值為null