欧美三区_成人在线免费观看视频_欧美极品少妇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條評論
主站蜘蛛池模板: 天天综合久久 | 色秀视频免费高清网站 | 一区影院 | 香蕉视频在线观看视频 | 91精品天美精东蜜桃传媒免费 | 乳欲人妻办公室奶水在线电影国产 | 日韩在线视频免费 | 国产日韩久久久精品影院首页 | 另类五月天| 午夜婷婷网 | 小明www永久在线看 国产美女一区二区三区 | 亚洲狠狠婷婷综合久久久久图片 | 精品视频在线观看 | 久久综合图区亚洲综合图区 | 久久草视频 | 国产一区二区三区视频 | 99久久精约久久久久久清纯 | 91视频导航 | 国产成人高清 | 很黄很色的网站 | www噜噜偷拍在线视频 | 99久久产在线 | 亚洲a级大片 | 国产三级在线视频 一区二区三区 | 欧美日韩在线观看视频 | 一级在线免费视频 | 精品在线视频一区 | 日韩v在线 | 国产成人在线视频 | 日本欧美中文字幕人在线 | 91se在线看片国产免费观看 | 挑战者联盟第一季免费观看完整版 | 久久99热久久精品在线6 | 小明永久2015www永久免费观看 | 成年人免费网站在线观看 | 男女在线免费视频 | 一级毛片免费视频 | 欧美亚洲一区二区三区在线 | 午夜国产精品视频在线 | 色综合久久天天综合观看 | 国产电影网 |