JAVA是一款在商業(yè)領(lǐng)域運(yùn)用廣泛的編程軟件,他之所以在商圈比較受歡迎,也許其原因之一就是因?yàn)镴AVA時(shí)一款面向?qū)ο蟮木幊誊浖?。因?yàn)樯虡I(yè)性活動(dòng)中,某些技術(shù)和某些數(shù)據(jù)是一些公司的生存秘訣,而面向?qū)ο蟮木幊谭椒ㄏ噍^于面向過程的編程方法有較高的安全性
在JAVA中 類的定義方式為:
public class 類名{}
文件保護(hù)形式+class+類名+{}
文件保護(hù)形式有 public、protected、private三種形式的數(shù)據(jù)保護(hù)形式
根據(jù)它們的英文單詞的意思
**public** 是公有的 公開的 意味著這個(gè)類中定義的數(shù)據(jù)是可以共享的,是對(duì)所有用戶開放的
**protected** 是受保護(hù)的意思,就是只限定于具備某類條件的時(shí)間才可以使用 舉個(gè)簡(jiǎn)單的例子: 比如說(shuō)不是中國(guó)國(guó)籍的公民,他是不能隨意進(jìn)入中國(guó)境內(nèi)的,一定要需要具備一定的條件,我們要到國(guó)外去旅游也是一樣,我們需要護(hù)照(這就是我們所說(shuō)的規(guī)則)
**private**則是私人的,是指這是為該類用戶唯一擁有的,其他人均不可直接調(diào)用里面的數(shù)據(jù),即便是自己的派生類 也無(wú)法直接調(diào)用里面的數(shù)據(jù)
類與對(duì)象怎么去理解呢:
在java中,類具有一定的屬性,與方法,這些屬性與方法可以是用戶自己來(lái)定義的,有些事java系統(tǒng)里面自帶的,對(duì)象則是類中抽出來(lái)的一個(gè)具體的事物。
比如說(shuō),學(xué)生就可以看作一個(gè)類,而學(xué)生中每一個(gè)就可以看作一個(gè)特定的對(duì)象
怎么去描述一個(gè)學(xué)生呢,我們所知一個(gè)學(xué)生會(huì)有“學(xué)號(hào)”、“性別”、“年齡”等等屬性,也有“進(jìn)行運(yùn)動(dòng)”、“與人交朋友” 等行為(也就是java中的方法)
大家可以看到,我們?cè)趈ava中創(chuàng)建一個(gè)類:
//創(chuàng)建一個(gè)學(xué)生類
public class Student
? ? ? ? ? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //學(xué)生的學(xué)號(hào)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? int studentnumber;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //學(xué)生的性別
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? String name;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //學(xué)生的姓名
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? int age;
? ? ? ? ? ? ? ? ? ? ? ? ? ? public void makefriend()
? ? ? ? ? ? ? ? ? ? ? ? ? ? {? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? System.out.println(name+"交了朋友")
? ? ? ? ? ? ? ? ? ? ? ? ? ? }
這是創(chuàng)建了一個(gè)類,在這個(gè)類中,有幾個(gè)地方有幾點(diǎn)說(shuō)明:
定義類的屬性的話:
數(shù)據(jù)類型+屬性名;
定義方法的話:
public(或者是protected和private) +數(shù)據(jù)類型+方法名(參數(shù)){}
//兩個(gè)斜杠后面是注釋語(yǔ)句,不算程序主題,只是為了方便理解
然后的話,我們需要一個(gè)主函數(shù)來(lái)運(yùn)行程序
主函數(shù)可以定義在當(dāng)前類中,也可以重新定義一個(gè)類來(lái)寫主函數(shù)
比如:
public class main
? ? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? public static void main(String[] arg)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Student st1=new Student();
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? st1.name="張三";
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? st1.makefriend();
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? }
在這段程序中我們可以看到:
1、主函數(shù)的定義方式:
public static void main(String[] 參數(shù)名(隨便?。?{}
然后再大括號(hào)里面寫函數(shù)體。
2、對(duì)象的的定義:
類名 +自定義名字=new 類名();
比如前面的 Student st1 =new Student();
這樣我們就定義了一個(gè)對(duì)象
3、類屬性的引用與賦值:
像上段程序中的
st1.name=“張三”;
格式為 定義名.屬性=想賦的值;
掌握了以上知識(shí)以后,我們就可以來(lái)簡(jiǎn)單的整理一下編寫java程序的思路
1、分析問題中有什么類
2、然后分析這些類所具有的對(duì)象和方法(方法可以理解為“行動(dòng)”)
3、然后解決問題
此后我們可以去編寫一個(gè)簡(jiǎn)單的程序,如求一個(gè)矩形的面積與周長(zhǎng)
1、在此問題中,矩形是一個(gè)類,然而其對(duì)應(yīng)的長(zhǎng)和寬就是它的屬性
求面積,周長(zhǎng)就是他的方法
如此我們就可以這樣編寫:
public class qiz
? ? { //定義屬性長(zhǎng)和寬
? ? ? ? int a,b;
? ? ? ? //編寫方法
? ? ? ? public void areaandlength()
? ? ? ? {
? ? ? ? ? System.out.println("矩形的面積為"+a*b);
? ? ? ? ? System.out.println("矩形的周長(zhǎng)為"+2*(a+b));
? ? ? ? }
? ? ? ? //編寫主方法
? ? ? ? public static void main(String[] arg){
? ? ? ? ? ? ? qiz ji=new qiz();
? ? ? ? ? ? ? qiz.a=6;//矩形的長(zhǎng)為6
? ? ? ? ? ? ? qiz.b=3;//矩形的寬為3
? ? ? ? ? ? ? qiz.areaandlength();
? ? ? ? }
? ? }
那么最后運(yùn)行的結(jié)果為:
矩形的面積為 18
矩形的周長(zhǎng)為 18
這樣的話我們的問題也就得到了解決
總結(jié):
Java中的類與對(duì)象與生活中的問題息息相關(guān),希望以上對(duì)類和對(duì)象的介紹會(huì)對(duì)大家有用!