c語言set函數(shù)用法 c++中set的用法

程序中set和get的用法

java程序一般將A類的屬性修飾符設(shè)置為private,這是為了更好的封裝數(shù)據(jù)。要想在B類里引用該屬性,就可以在A類里定義修飾符為public的set,get方法以設(shè)置和獲取private型的屬性值

成都創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站建設(shè)、成都做網(wǎng)站、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)上饒,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108

別說的那么專業(yè)化了,理解都要半天。

就這么理解吧,面向?qū)ο笾?,想?duì)類的成員變量設(shè)置訪問一些權(quán)限,于是,就將該字段設(shè)置為private的,這樣別的類就不能訪問了,然后在該內(nèi)定義兩個(gè)方法,一個(gè)專門用于獲取,一個(gè)用于修改,這樣,在你不想讓別人亂動(dòng)該字段的時(shí)候,就在該方法內(nèi)寫一些限制條件。

而為了規(guī)范起見(團(tuán)隊(duì)開發(fā)需要嘛),就根據(jù)人家老外的習(xí)慣,將方法名設(shè)置為set+字段名,get+字段名(名字亂改沒問題),既然規(guī)范了,那就是別人都叫這名了,于是,有些框架給對(duì)象賦值就有方法了,方法名稱由get或set開始的又有private變量名的,就找出來調(diào)用。hibernate1框架就這樣弄得,至于后面的版本是不是這樣就不大清楚了。

JavaBean就是一個(gè)JAVA類,既然是JAVA類就不需要什么組件了,這玩意直接深入到虛擬機(jī)了的

java程序規(guī)范中會(huì)建議大家盡量將類中的屬性私有化,即定義為private變量,通過設(shè)置set和get函數(shù)來對(duì)屬性進(jìn)行操作。一些人存在這樣的疑問,為什么不直接將屬性設(shè)置為public,以后調(diào)用屬性時(shí)直接通過對(duì)象進(jìn)行訪問不是更方便?

當(dāng)然java中這樣做有它的原因:

1 將數(shù)據(jù)與行為分離,也就是java的面向?qū)ο蟮母拍睢?/p>

對(duì)象就是屬性+行為,封裝就是把對(duì)象的私有屬性封裝起來,只有通過自己公開的行為去改變(獲得)對(duì)象內(nèi)部的私有屬性信息,而那些public的方法正是面向其他對(duì)象的接口,只有通過接口去改變(獲得)對(duì)象的私有屬性

2 安全性

設(shè)想,你有一個(gè)Person類代表一個(gè)人,Person有一個(gè)char類型的sex字段表示性別,理論上,sex只接受兩個(gè)值, 'M '和 'F ',但如果你把sex字段設(shè)為public,你很難限制你的用戶只給它賦 'M '或 'F '值。將sex設(shè)為private,再用setSex()來設(shè)置性別,你就完全可以控制這種行為了。而且你還可以控制只能get不能set,或相反,但如果是public就不行了。別外有一點(diǎn)屬性我們可能并不希望其他用戶對(duì)我們的屬性進(jìn)行寫操作,這個(gè)時(shí)候,可以直接不寫setX方法。這就是只讀屬性了。

3 編碼規(guī)范性

我們?cè)谠O(shè)計(jì)類,或者作com組件時(shí)經(jīng)常告訴其實(shí)coder,你只需要調(diào)用我的XX接口方法就可以了,內(nèi)部我是怎么實(shí)現(xiàn)的,你不用管,如果面向特定的環(huán)境特定的時(shí)間段,直接將屬性聲明為public,讓外部對(duì)象訪問也未償不可,沒有面象對(duì)象思想時(shí),我在寫C語言程序時(shí)結(jié)構(gòu)中的變量是可以隨意被訪問的,因?yàn)闆]有pulbic,private之分,現(xiàn)在我們是面向?qū)ο缶幊?,我們需要在接口處作文章,而保護(hù)對(duì)象的私有屬性,即安全性,只有通過對(duì)外公開的接口方法去訪問在面向?qū)ο罄碚撋险J(rèn)為是安全的。

4 穩(wěn)定性

5 可擴(kuò)展性

6 便于維護(hù)

如何使用C語言settime函數(shù)?(就是用來設(shè)置系統(tǒng)的時(shí)間)

1、函數(shù)名: settime

功 能: 設(shè)置系統(tǒng)時(shí)間

原型:void settime

2、例程:

#include?stdio.h

#include?dos.h

int?main(void)

{

struct?time?t;

gettime(t);

printf("The?current?minute?is:?%d\n",?t.ti_min);

printf("The?current?hour?is:?%d\n",?t.ti_hour);

printf("The?current?hundredth?of?a?second?is:?%d\n",?t.ti_hund);

printf("The?current?second?is:?%d\n",?t.ti_sec);

/*?Add?one?to?the?minutes?struct?element?and?then?call?settime?*/

t.ti_min++;

settime(t);?//設(shè)置系統(tǒng)時(shí)間

return?0;

}

用c語言設(shè)計(jì)一個(gè)Deta的類,數(shù)據(jù)成員包括day,month,year。使用get和set函數(shù)設(shè)置數(shù)據(jù),在屏幕上顯示。

#include iostream.h

class Deta

{

public : int day,month,year;

void get();

void set();

};

void Deta::set()

{

cinthis-daythis-monththis-year;

}

void Deta::get()

{

coutthis-day" "this-month" "this-yearendl;

}

void main()

{

Deta deta;

while(1)

{

deta.set();

deta.get();

}

}

文章標(biāo)題:c語言set函數(shù)用法 c++中set的用法
當(dāng)前路徑:http://muchs.cn/article22/docchcc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、小程序開發(fā)、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站策劃、靜態(tài)網(wǎng)站域名注冊(cè)

廣告

聲明:本網(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í)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)