欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java入門——類與對(duì)象-創(chuàng)新互聯(lián)

文章目錄
    • 類的認(rèn)識(shí)
    • 類的創(chuàng)建
    • 對(duì)象的創(chuàng)建和使用
    • 參數(shù)的傳遞
    • 匿名對(duì)象
    • 小結(jié)

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:申請(qǐng)域名、虛擬主機(jī)、營(yíng)銷軟件、網(wǎng)站建設(shè)、烏翠網(wǎng)站維護(hù)、網(wǎng)站推廣。
類的認(rèn)識(shí)

什么是類呢?首先舉個(gè)簡(jiǎn)單的例子:
在這里插入圖片描述

這是一個(gè)學(xué)生類,學(xué)生下面有不同的對(duì)象Student1,Student2,…… Studentn,學(xué)生有自己的姓名,性別,身高,年齡等信息,這些信息是學(xué)生類的屬性,而每個(gè)學(xué)生有著自己的行為,比如:努力學(xué)習(xí),參加競(jìng)賽,唱歌等等行為,由此說(shuō)明類有著自己的屬性和行為,在類中我們通過(guò)成員變量來(lái)描述屬性,通過(guò)成員方法來(lái)描述行為。

通過(guò)上述描述,我們可以有很明顯的感覺(jué),類是抽象的,我們不能夠詳細(xì)地描述出來(lái),但是對(duì)象是實(shí)實(shí)在在存在的個(gè)體。具有相同的屬性和行為的對(duì)象共同的組成了一個(gè)類,就像上述的學(xué)生類,每個(gè)學(xué)生都有自己的姓名,身高等,同樣學(xué)生需要學(xué)習(xí),做自己的事情等。

類的創(chuàng)建

📖類的定義格式

[類修飾符] class 類名{

[修飾符] 數(shù)據(jù)類型 成員變量名;

[修飾符] 返回值的數(shù)據(jù)類型 方法名(參數(shù)1,參數(shù)2,…,參數(shù)n){

方法體;

return [表達(dá)式];

? }

}

🥠類的舉例

public class Student{String name;
    double height;
    char sex;
    int age;
    public void read(){System.out.println("在看書");
    }
    public double average(double Chinese,double English){double aver=(Chinese+English)/2;
        return aver;
    }
}

需要注意的是:

🍥相互對(duì)立的修飾符不能同時(shí)在一個(gè)類中使用;

🍥一個(gè)成員變量可以被兩個(gè)以上的修飾符同時(shí)修飾,但是有些修飾符不能同時(shí)使用;

🍥成員方法與成員變量類似。

我們可以輕易地發(fā)現(xiàn)在類中有變量,在方法中也可以有變量,但是這兩種變量究竟有什么區(qū)別呢?

在類中定義的變量稱為成員變量,而在方法中定義的變量稱為局部變量。

  • 修飾符有異同;
  • 從內(nèi)存角度看,成員變量屬于對(duì)象的一部分,而對(duì)象是存在于堆內(nèi)存中的,局部變量是存在棧內(nèi)存當(dāng)中的;
  • 從生存時(shí)間看,由于成員變量是對(duì)象的一部分,所以有對(duì)象就有成員變量,也就是說(shuō)隨著對(duì)象的創(chuàng)建而存在,局部變量是屬于方法的一部分,當(dāng)方法被調(diào)用時(shí),局部變量產(chǎn)生,當(dāng)方法結(jié)束時(shí),局部變量自動(dòng)消失;
  • 成員變量一般情況下沒(méi)有被賦值,會(huì)被自動(dòng)地根據(jù)類型進(jìn)行賦值。局部變量必須賦值后才能使用。
對(duì)象的創(chuàng)建和使用

對(duì)象的生命周期是:創(chuàng)建–>使用–>銷毀。

對(duì)象是類的實(shí)例,對(duì)象是屬于某個(gè)已知的類。所以創(chuàng)建一個(gè)對(duì)象我們可以通過(guò)下列步驟創(chuàng)建:

//步驟1:聲明指向“由類所創(chuàng)建的對(duì)象”的變量
Student s1;
//利用new運(yùn)算符創(chuàng)建新的對(duì)象,并將其指派給上面所創(chuàng)建的變量S1
s1=new Student(); //變量s1指向new創(chuàng)建的新的對(duì)象

由于步驟1中有s1,步驟2中也有s1,所以我們可以猜想是否可以合并一下變成下面的形式:

Student s1=new Student();

答案是可以的。對(duì)于新創(chuàng)建的對(duì)象s1,因?yàn)槭峭ㄟ^(guò)Student類創(chuàng)建而來(lái)的,所以它具有保存數(shù)值的變量name、height、sex、age變量,擁有read、average方法。

我們以Student作為變量類型在??臻g中定義了變量s1,用來(lái)指向通過(guò)new運(yùn)算符在堆內(nèi)存中創(chuàng)建的一個(gè)Student類的實(shí)例對(duì)象。

我們來(lái)看一下內(nèi)存分配情況:

在這里插入圖片描述

實(shí)際上,s1變量是指向由Student所創(chuàng)建的對(duì)象,故s1可以看做是對(duì)象的名稱,s1并不是對(duì)象本身,我們可以理解s1起到的是引導(dǎo)作用。

我們所定義的變量都需要賦初值,當(dāng)對(duì)象被創(chuàng)建時(shí),對(duì)象中各種類型的成員變量都會(huì)自動(dòng)初始化。

成員變量類型初始值成員變量類型初始值成員變量類型初始值
byte0long0Lbooleanfalse
short0float0.0Fchar‘\u0000’
int0double0.0D所有引用類型null

對(duì)象創(chuàng)建的作用就是為了我們能夠訪問(wèn)到對(duì)象的成員,訪問(wèn)格式如下:

🍥對(duì)象名.對(duì)象成員

為了更好的記憶,我們可以將格式中的.理解為"的"的意思。簡(jiǎn)單舉例:s1.name代表的是對(duì)象s1的name成員,也就是s1的名字。對(duì)對(duì)象的成員賦值例如下面格式:s1.name=“張三”。

在類定義內(nèi)部,方法與方法之間也可以實(shí)現(xiàn)相互調(diào)用,比如說(shuō)我們數(shù)學(xué)上學(xué)的圓柱體,首先我們需要有底面圓半徑和圓柱高,通過(guò)半徑計(jì)算底面圓面積,借用面積與高實(shí)現(xiàn)體積的計(jì)算。

在這里插入圖片描述

在體積的計(jì)算中,我們需要借用面積,而用語(yǔ)言表達(dá)則是,在求體積的方法中調(diào)用求面積的方法,這就是在類的內(nèi)部實(shí)現(xiàn)方法之間的調(diào)用。

🍪一丟丟的小細(xì)節(jié):

🍥在類的內(nèi)部中,本類的某個(gè)方法需要調(diào)用本類中其他方法時(shí),不需要加上對(duì)象名;

🍥如果強(qiáng)調(diào)是對(duì)象本身的成員的話,則可以再成員名前加this關(guān)鍵字

🍥當(dāng)成員變量與成員方法中的局部變量同名時(shí),在方法內(nèi)對(duì)同名變量的訪問(wèn)是指的局部變量,當(dāng)我們特指成員變量時(shí),需要用this關(guān)鍵字。

參數(shù)的傳遞

以變量為參數(shù)調(diào)用方法

示例:

public void average(double Chinese,double English){double aver=(Chinese+English)/2;
         System.out.println(aver);
    }

在方法中的參數(shù)變量Chinese,English都是局部變量,它們的作用范圍為average方法內(nèi)部,超出范圍無(wú)效。

以數(shù)組為參數(shù)或返回值的方法調(diào)用

傳遞數(shù)組示例:

pubilc static void main(String[] args){int a[]={6,23,4,7};//定義一維數(shù)組
    MinNumber min_1=new MinNumber();
    min_1.least(a);//將一維數(shù)組a傳入laest()方法
}
class MinNumber{//定義一個(gè)類
    public void least(int arr[]){//參數(shù)arr接收一維整型數(shù)組
	int temp=arr[0];
        for(int i=0;iarr[i])
                temp=arr[i];
        System.out.println("最小的數(shù)為:"+temp);
    }
}

返回值為數(shù)組類型的方法示例:

pubilc static void main(String[] args){int a[][]={{1,2,3},{4,5,6},{7,8,9}};//定義二維數(shù)組
    int b[][]=new int[3][3];
    Change_1 pose=new Change_1();
    b=pose.transpose(a);
}
class Change_1{int temp;
    int [][] transpose(int arr[][]){//返回值和參數(shù)均為二維數(shù)組
	for(int i=0;i	//實(shí)現(xiàn)行列交換
            temp=arr[i][j];
            arr[i][j]=arr[j][i];
            arr[j][i]=temp;
        }
    return array;//返回二維數(shù)組
    }
}

方法中的可變參數(shù)
📖語(yǔ)法格式

返回值類型 方法名(固定參數(shù)列表,數(shù)據(jù)類型…可變參數(shù)名)

{

? 方法體

}

數(shù)據(jù)類型…可變參數(shù)名由于個(gè)數(shù)可變,所以相當(dāng)于數(shù)組??勺儗?shí)參實(shí)際上以數(shù)組的形式被保存下來(lái),而可變參數(shù)名就是數(shù)組名。

🍥如果方法中有多個(gè)參數(shù),可變參數(shù)必須放在最后一位;

🍥可變參數(shù)符號(hào)"…"要位于數(shù)據(jù)類型和數(shù)組名之間,其前后可有空格;

🍥調(diào)用可變參數(shù)方法時(shí),在方法體中以數(shù)組的形式訪問(wèn)可變參數(shù)。

匿名對(duì)象

在生活中匿名代表著什么——沒(méi)有名字,這里的匿名對(duì)象也是沒(méi)有名字,舉個(gè)例子,我們之前創(chuàng)建對(duì)象是這樣創(chuàng)建的:

Student s1=new Student();
s1.average(80.5,78.5);
//當(dāng)我們采用匿名對(duì)象時(shí)
new Student().average(80.5,78.5);

從上述代碼段看,我們將第一行的s1整體代換到第二行的s1中,在第四行代碼中,new Student()就是匿名對(duì)象。當(dāng)方法執(zhí)行完后,該對(duì)象就成為了垃圾。

那么問(wèn)題來(lái)了,我們什么時(shí)候使用匿名對(duì)象呢?

🍥如果對(duì)一個(gè)對(duì)象只需要一次調(diào)用,我們使用匿名對(duì)象;

🍥將匿名對(duì)象作為實(shí)參傳遞給一個(gè)方法調(diào)用時(shí)。比如我們定義一個(gè)方法getMessage需要接收Student類對(duì)象作為參數(shù)則:

public static void getMessage(Student s1){}
//我們可以用這樣的語(yǔ)句調(diào)用getMessage方法
getMessage(new Student());
小結(jié)

🍥類是把事物的數(shù)據(jù)和相關(guān)功能封裝在一起,形成的一種特殊結(jié)構(gòu);

🍥同一個(gè)java程序中,最多只能有一個(gè)類聲明為public,此時(shí)文件名要和public類名保持一致;

🍥若方法本身沒(méi)有返回值,則必須在方法定義的前面加上關(guān)鍵字void。

📖回顧:

🍪匿名對(duì)象是什么?

🍪成員變量和局部變量有哪些異同?

🍪創(chuàng)建屬于某類的對(duì)象需要那些步驟?

🍪在類的外部我們能否訪問(wèn)到類內(nèi)部的成員?

🍪當(dāng)需要強(qiáng)調(diào)"對(duì)象本身的成員"時(shí),我們應(yīng)該怎么做?

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

文章標(biāo)題:java入門——類與對(duì)象-創(chuàng)新互聯(lián)
本文鏈接:http://chinadenli.net/article28/ddigjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站制作、定制開發(fā)、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)