Java小站第三課:Java中類和對(duì)象的概念

上一節(jié)課我們寫(xiě)了一個(gè)最簡(jiǎn)單的入門(mén)程序HelloWorld,相信大家對(duì)Java程序有了一個(gè)基本的認(rèn)識(shí),這節(jié)課我們就來(lái)講一講類和對(duì)象的概念。

大千世界,萬(wàn)物皆對(duì)象。外界的一切事物在Java程序中都可以被描述出來(lái)。在Java中,我們使用類(class)來(lái)描述數(shù)據(jù),我先來(lái)舉個(gè)簡(jiǎn)單的栗子。如果想描述一個(gè)人,那么我們需要刻畫(huà)他的幾個(gè)基本屬性:姓名、年齡、家庭住址,這些是所有人通用的屬性,我們可以使用一個(gè)類來(lái)描述通用的人類。新建一個(gè)java文件,Person.java:

public class Person{
    //姓名
    private String name;
    //年齡
    private int age;
    //地址
    private String address;
    //say方法,打印person的所有屬性
    void say() {
        System.out.println("我是" + name + ",我今年" + age + "歲啦,我家住在" + address);
    }
    
    public static void main(String[] args) {
        //new一個(gè)Person類的對(duì)象person
        Person person = new Person();
        //設(shè)置person的名字
        person.name = "騷武";
        //設(shè)置person的年齡
        person.age = 28;
        //設(shè)置person的地址
        person.address = "上海市黃浦區(qū)";
        /*
        調(diào)用person的say方法
        */
        person.say();
    }
}

我們?cè)赾md中編譯運(yùn)行這個(gè)程序,結(jié)果是:


Person

我來(lái)稍微的解釋下這個(gè)程序。這個(gè)程序定義了一個(gè)Person的類,類有三個(gè)屬性:name,age,address,分別用來(lái)描述Person的姓名、年齡、地址。在類中還有一個(gè)無(wú)返回的方法say(),這個(gè)方法是在控制臺(tái)打印出Person的三個(gè)屬性。在main方法中,我新建了一個(gè)Person類的對(duì)象person并給它的三個(gè)屬性賦值,然后我直接調(diào)用person.say()方法就可以看到我設(shè)置的person的三個(gè)屬性了。

注意:java中的注釋是 "http://" ,這個(gè)是單行注釋。在這一行,雙斜杠后面的所有字符都不會(huì)被編譯,它是對(duì)java代碼的說(shuō)明。還有一種注釋是多行注釋 "/* 我是注釋 * /",在"/* " 和 " */"之間的所有字符都不會(huì)被編譯,可以寫(xiě)多行的說(shuō)明。Java中如果是在字符串中間寫(xiě) "+" ,其作用是拼接字符串,如果是在兩個(gè)數(shù)字中寫(xiě) "+",其作用是數(shù)字的相加,如果是字符串和數(shù)字之間寫(xiě)"+",其作用還是拼接字符串。

類我們可以理解成設(shè)計(jì)武器的圖紙,而對(duì)象就是根據(jù)圖紙制造出來(lái)的武器。我們只需要在圖紙中定義好武器的屬性和尺寸,就可以無(wú)限制的創(chuàng)造武器。我們還可以在創(chuàng)造武器的時(shí)候自己設(shè)定其尺寸,但是武器的所有構(gòu)造都在圖紙中說(shuō)明好了。在Java中,使用new關(guān)鍵字,就可以通過(guò)類來(lái)創(chuàng)建對(duì)象,即通過(guò)圖紙創(chuàng)造武器。這個(gè)過(guò)程叫做類的實(shí)例化,因此也稱對(duì)象是類的一個(gè)實(shí)例。

注意:類只是一張圖紙,起到說(shuō)明的作用,不占用內(nèi)存空間;對(duì)象才是具體的武器,要有地方來(lái)存放,才會(huì)占用內(nèi)存空間。關(guān)于內(nèi)存的概念我會(huì)在后續(xù)的課程中講解。類所包含的變量和函數(shù)都有特定的稱呼,變量被稱為屬性(通常也稱成員變量),函數(shù)被稱為方法,屬性和方法統(tǒng)稱為類的成員。

在Java中,可以將完成某個(gè)功能的代碼塊定義為方法,將具有相似功能的方法定義在一個(gè)類中,也就是定義在一個(gè)源文件中(因?yàn)橐粋€(gè)源文件只能包含一個(gè)公共的類),多個(gè)源文件可以位于一個(gè)文件夾,這個(gè)文件夾有特定的稱呼,叫做包。

Java中包和類的概念

Java的這種包的結(jié)構(gòu)不會(huì)對(duì)程序的執(zhí)行效率有任何的影響,它的作用是更加方便地管理我們的代碼。把相關(guān)功能的代碼放在一個(gè)包中,可以更方便地調(diào)用,更明確地區(qū)別不同的類的功能。這種管理代碼的方式是Java的一小步,卻是編程界思想革新的一大步~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容