欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

C/C++、Java、Go、Python總結對比10-類的總結對比-類的簡單

系統 1827 0

現代編程語言基本上都是面向對象的語言,而這些語言基本上都會使用類體現該思想。本節主要介紹各個語言類的簡單定義及語法,復雜的內容后續慢慢介紹。

c的寫法

c沒有類的定義,可以使用結構體間接實現,這里不做介紹。

c/c++的寫法

定義頭文件person.h

            
              //定義頭文件
class CPerson {
public:  //定義可以被任意實體訪問變量
    int age;  //聲明成員變量
    char name[3];

    int getAge();  //聲明成員函數
    void setAge(int sAge);
    char* getName();
    void setName(char sName[3]);
}; 

            
          

在main函數中調用類

            
              //引入頭文件
#include "person.h"
//初始化成員函數
int CPerson::getAge() {
    return age;
}
void CPerson::setAge(int sAge) {
    age = sAge;
}
char* CPerson::getName() {
    return name;
}

void CPerson::setName(char sName[3]) {
    strcpy(name, sName);
}

int main() {
    int iRet = -1;
    CPerson p;  //聲明一個對象
    p.setAge(20);  //給對象的成員變量賦值
    char pName[3] = "a";
    p.setName(pName);
    cout << "age is " << p.getAge() << endl;
    cout << "name is " << p.getName() << endl;
}

            
          

java的寫法

定義JPerson.java文件

            
              //定義類
public class JPerson {
    public int age;  //聲明成員變量
    public String name;

    public void setAge(int age) {  //聲明成員函數
        this.age = age;
    }

    public int getAge() {
        return age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

            
          

調用類

            
              public class JPersonMain {
    public static void main(String[] args) {
        JPerson jPerson = new JPerson();  //初始化類
        jPerson.setAge(20);  //為成員變量賦值
        jPerson.setName("a");
        System.out.println(String.valueOf(jPerson.getAge()));  //獲得成員變量值
        System.out.println(String.valueOf(jPerson.getName()));
    }
}

            
          

go的寫法

            
              func main() {
	classDemo1()
}

//go中沒有類的概念,但是可以通過將struct和方法進行結合實現類的功能
type GPerson struct {
	Age int
	Name string
}

//定義方法,注意此處和函數的不同
func (p GPerson)printAge()  {
	fmt.Println(p.Age)
}

func (p GPerson)printName()  {
	fmt.Println(p.Name)
}

func classDemo1()  {
	p := GPerson{20, "a"}  //初始化struct,并為變量賦值
	p.printAge()  //調用相關的方法
	p.printName()
}

            
          

python的寫法

            
               # 定義類
class Person:
    def __init__(self, name, age):  # 聲明成員變量
        self.name = name
        self.age = age

    def pring_name_age(self):  # 定義成員函數
        print(self.age)
        print(self.name)


if __name__ == "__main__":
    p = Person("a", 20)  # 聲明并初始化類
    p.pring_name_age()  # 調用類方法

            
          

總結對比:

1. c和go沒有類的概念。go可以使用結構體和方向實現類的功能;

2. c++、java和python都可以實現類,過程較為類似。類的變量作用范圍以及成員變量的默認值等細節后面章節討論。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 一区在线播放 | 亚洲视频免费在线看 | 国产小视频在线高清播放 | 欧美成人一级片 | 午夜视频在线免费播放 | 国产人成精品综合欧美成人 | 国产福利视频在线观看 | 亚洲国产一区二区三区四区 | 日韩欧美大片 | 福利网在线 | 热久久这里只有精品 | 天天夜夜人人 | 日本精品一区二区三区四区 | 久久久久av | 国产一级免费在线观看 | 中国一级特黄毛片大片 | 精品久久久影院 | 久久久综合 | 国产精品香蕉一区二区三区 | 日本不卡中文字幕一区二区 | jjzzjjzz在线观看 | 性少妇videosexfreexx | 久久日本精品在线热 | 美女国内精品自产拍在线播放 | 毛片毛片毛片毛片毛片 | 无限看片在线版免费视频大全 | 亚洲国产成人av好男人在线观看 | 日韩99| 国产在线不卡午夜精品2021 | 亚洲一区二区三区欧美 | 日韩精品一区在线观看 | 九九九九九九精品免费 | 鲁丝片一区二区三区免费 | 一本色道久久综合狠狠躁 | 天天久久狠狠色综合 | 久草福利在线观看 | 久久久久国产精品免费免费搜索 | 中文字幕乱码一区二区三区 | 91精品国产一区二区三区蜜臀 | 黄色一级大片在线免费看产 | 天天插一插 |