黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

Java教程
Java標識符與關鍵字
Java變量
Java數(shù)據(jù)類型
Java運算符
Java控制語句
Java方法
Java面向對象
Java對象的創(chuàng)建和使用
Java封裝
Java中static和this
Java繼承
Java方法覆蓋和多態(tài)
Java super
Java基礎練習題

Java對象的創(chuàng)建和使用方法

本章節(jié)目標:

理解構造方法以及重載機制,通過構造方法可以完成對象的創(chuàng)建,并且能夠通過引用訪問對象的內存,了解Java虛擬機內存管理,能夠畫出程序執(zhí)行過程的內存圖,并了解空指針異常是如何發(fā)生的,以及方法調用時參數(shù)是如何傳遞的。

知識框架:

Java對象的創(chuàng)建和使用方法

Java對象的創(chuàng)建和使用方法

類定義之后,就可以使用類這個“模板”來創(chuàng)造“對象”了,一個類是可以創(chuàng)建多個對象的哦!怎么創(chuàng)建呢,語法是什么?其實語法格式很簡單:new 類名(),這樣就可以完成對象的創(chuàng)建了。俗話說,你想要什么java都可以給你,想要啥你就new啥。請看下面代碼:

public class StudentTest {
	public static void main(String[] args) {
		//創(chuàng)建一個學生對象
		new Student();
		//再創(chuàng)建一個學生對象
		new Student();
	}
}

為了使用對象更加方便,建議使用變量接收一下?例如以下代碼:

public class StudentTest {
	public static void main(String[] args) {
		//創(chuàng)建一個學生對象
		Student s1 = new Student();
		//再創(chuàng)建一個學生對象
		Student s2 = new Student();
		//以上代碼其實和這行代碼差不多
		int i = 10;
	}
}

以上代碼最初接觸的時候,大家肯定會感覺非常陌生,這也是正常的,Student s1 = new Student()實際上和int i = 10是類似的,對于int i = 10來說,int是一種基本數(shù)據(jù)類型,i是變量名,10是int類型的字面量。那對于Student s1 = new Student()來說,其中Student是一種引用數(shù)據(jù)類型,s1是變量名,new Student()執(zhí)行之后是一個Student類型的對象。

大家要注意了,java語言當中凡是使用class關鍵字定義的類都屬于引用數(shù)據(jù)類型,類名本身就是這種引用數(shù)據(jù)類型的類型名。創(chuàng)建了對象之后怎么去訪問這個對象的屬性呢,或者說學生對象現(xiàn)在有了,怎么去訪問他的學號、姓名、性別、年齡等信息呢。請看以下代碼:

public class StudentTest {
	public static void main(String[] args) {
		//創(chuàng)建一個學生對象
		Student s1 = new Student();
		//再創(chuàng)建一個學生對象
		Student s2 = new Student();
		//以上代碼其實和這行代碼差不多
		int i = 10;
		
		int no1 = s1.no;
		System.out.println("學號:" + no1);
		String name1 = s1.name;
		System.out.println("姓名:" + name1);
		int age1 = s1.age;
		System.out.println("年齡:" + age1);
		boolean sex1 = s1.sex;
		System.out.println("性別:" + sex1);
		
		int no2 = s2.no;
		System.out.println("學號:" + no2);
		String name2 = s2.name;
		System.out.println("姓名:" + name2);
		int age2 = s2.age;
		System.out.println("年齡:" + age2);
		boolean sex2 = s2.sex;
		System.out.println("性別:" + sex2);
		
		//當然,也可以不使用no1,no2這樣的變量接收
		System.out.println("學號 = " + s1.no);
		System.out.println("姓名 = " + s1.name);
		System.out.println("年齡 = " + s1.age);
		System.out.println("性別 = " + s1.sex);
		
		System.out.println("學號 = " + s2.no);
		System.out.println("姓名 = " + s2.name);
		System.out.println("年齡 = " + s2.age);
		System.out.println("性別 = " + s2.sex);
	}
}

運行結果如下圖所示:

對象的創(chuàng)建和使用

圖9-1:對象的創(chuàng)建和使用

接下來解釋一下以上的輸出結果,通過以上的Student類可以創(chuàng)建很多學生對象,假設通過Student類實例化了兩個學生對象,那必然會有兩個不同的學號,以上程序中并沒有給學號賦值,但是獲取了到的學號都是0,這是怎么回事呢?這是因為在java語言當中,當實例變量沒有手動賦值,在創(chuàng)建對象的時候,也就是說在new的時候,系統(tǒng)會對實例變量默認賦值,它們的默認值請參考下表:

數(shù)據(jù)類型

默認值

byte

0

short

0

int

0

long

0L

float

0.0f

double

0.0

boolean

false

char

\u0000

引用類型

null

全部教程
主站蜘蛛池模板: 天天做天天爱天天做天天吃中 | 午夜精品福利视频 | 亚洲欧美在线观看视频 | 日韩视频在线观看一区二区 | 亚洲香蕉伊在人在线观看9 亚洲香蕉一区二区三区在线观看 | 九九精品国产99精品 | 精品国产免费一区二区 | 男女一进一出免费视频 | 美女伊人 | 欧美视频一区 | 国产亚洲精品日韩香蕉网 | 韩日精品 | 在线精品视频播放 | aⅴ一区二区三区无卡无码 aⅴ在线免费观看 | 久久精品国产2020 | 欧美视频xx | 天天做天天爱天天一爽一毛片 | 色无五月| 亚洲大香人伊一本线 | 99激情| 在线免费午夜视频 | 丁香五月亚洲综合在线 | 最近免费中文字幕大全高清大全1 | 亚洲人成在线观看 | 麻豆回家视频区一区二 | a一级爱做片免费观看欧美 a一级爱做片免费 | 国产成人亚洲综合小说区 | 综合精品视频 | 国产欧美日韩看片片在线人成 | 国产男女自拍视频 | 在线视频一区二区日韩国产 | xxxxx日本护士xxxhd | 欧美激情一区二区三区视频 | 日韩亚洲一区中文字幕在线 | 91最新地址永久入口 | 干干干操操操 | 亚洲免费小视频 | 久久人人爽人人爽人 | 日本免费黄色网 | 国产va精品免费观看 | 日韩免费影视 |