天天看點

面向對象程式設計5.1——Java建立對象

對象-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中定義變量的重要規則
  1. Java語言嚴格區分基本類型和構造類型
  2. Java的基本類型隻有8種:byte,short,int,long,float,double,char,boolean
  3. 定義基本類型的變量是變量自身
  4. 基本類型以外的類型都是構造類型
  5. 數組、類是構造類型
  6. 定義構造類型的變量是指針變量,且初值為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是指針變量,
	}
}
           
面向對象程式設計5.1——Java建立對象

//Java語言既沒有“析構方法”也沒有delete指令

對象由系統自動回收

小結

單個源檔案的Java程式由若幹個類構成,其中僅有一個類加以public修飾(此前我們成為Java程式的架構)。并且:

1.該類的名字必須與檔案名相同

2.該類中有且隻有一個規定格式的main方法

構造函數又稱構造方法,Java語言沒有析構方法

用Java的類定義變量,實際得到的是指針變量,預設值為null