㈠ c#get,set怎麼用
C#getset函數很常用,但是用好還是需要很多經驗的,下面的文章就是幫你積累C#getset函數經驗的。
C#getset不提倡將域的保護級別設為
public而使用戶在類外任意操作--那樣太不OO,或者具體點說太不安全!對所有有必要在類外可見的域,C#推薦採用屬性來表達。屬性不表示存儲位置,這是屬性和域的根本性的區別。下面是一個典型的屬性設計:
usingSystem;
classMyClass
{
intinteger;
publicintInteger
{
get{returninteger;}
set{integer=value;}
}
}
classTest
{
publicstaticvoidMain()
{
MyClassMyObject=newMyClass();
Console.Write(MyObject.Integer);
MyObject.Integer++;
Console.Write(MyObject.Integer);
}
}
一如我們期待的那樣,程序輸出01。我們可以看到屬性通過對方法的包裝向程序員提供了一個友好的域成員的存取界面。這里的value是C#get
set的關鍵字,是我們進行屬性操作時的set的隱含參數,也就是我們在執行屬性寫操作時的右值。
屬性提供了只讀(get),只寫(set),讀寫(get和
set)三種介面操作。對域的這三種操作,我們必須在同一個屬性名下聲明,而不可以將它們分離,看下面的實現:
classMyClass
{
privatestringname;
publicstringName
{
get
{
returnname;
}
}
publicstringName
{
set{name=value;}
}
}
上面這種分離Name屬性實現的方法是錯誤的!我們應該像前面的例子一樣將他們放在一起。值得注意的是三種屬性(只讀,只寫,讀寫)被C#get
set認為是同一個屬性名,看下面的例子:
classMyClass
{
protectedintnum=0;
publicintNum
{
set
{
num=value;
}
}
}
classMyClassDerived:MyClass
{
newpublicintNum
{
get
{
returnnum;
}
}
}
classTest
{
publicstaticvoidMain()
{
MyClassDerivedMyObject=newMyClassDerived();
//MyObject.Num=1;//錯誤!
((MyClass)MyObject).Num=1;
}
}
由於屬性的方法的本質,屬性當然也有方法的種種修飾。屬性也有5種存取修飾符,但屬性的存取修飾往往為public,否則我們也就失去了屬性作為類的公共介面的意義。除了方法的多參數帶來的方法重載等特性屬性不具備外,
virtual,sealed,override,
abstract等修飾符對屬性與方法同樣的行為,但由於屬性在本質上被實現為兩個方法,它的某些行為需要我們注意。看下面的例子:
abstractclassA這個例子集中地展示了屬性在繼承上下文中的某些典型行為。這里,類A由於抽象屬性Z的存在而必須聲明為abstract。子類B中通過base關鍵字來引用父類A的屬性。類B中可以只通過Y-set便覆蓋了類A中的虛屬性。
{
inty;
publicvirtualintX
{
get
{return0;}
}
publicvirtualintY
{
get{returny;}
set{y=value;}
}
publicabstractintZ{get;set;}
}
classB:A
{
intz;
publicoverrideintX
{
get{returnbase.X+1;}
}
publicoverrideintY
{
set
{
base.Y=value<0?0:value;
}
}
publicoverrideintZ
{
get
{
returnz;
}
set
{
z=value;
}
}
}
靜態屬性和靜態方法一樣只能存取類的靜態域變數。我們也可以像做外部方法那樣,聲明外部屬性。以上就是對C#getset的簡單介紹。
㈡ java集合set有哪些方法
set是一個介面,一般實現類用HashSet
方法摘要
boolean add(E e)
如果 set 中尚未存在指定的元素,則添加此元素(可選操作)。
boolean addAll(Collection<? extends E> c)
如果 set 中沒有指定 collection 中的所有元素,則將其添加到此 set 中(可選操作)。
void clear()
移除此 set 中的所有元素(可選操作)。
boolean contains(Object o)
如果 set 包含指定的元素,則返回 true。
boolean containsAll(Collection<?> c)
如果此 set 包含指定 collection 的所有元素,則返回 true。
boolean equals(Object o)
比較指定對象與此 set 的相等性。
int hashCode()
返回 set 的哈希碼值。
boolean isEmpty()
如果 set 不包含元素,則返回 true。
Iterator<E> iterator()
返回在此 set 中的元素上進行迭代的迭代器。
boolean remove(Object o)
如果 set 中存在指定的元素,則將其移除(可選操作)。
boolean removeAll(Collection<?> c)
移除 set 中那些包含在指定 collection 中的元素(可選操作)。
boolean retainAll(Collection<?> c)
僅保留 set 中那些包含在指定 collection 中的元素(可選操作)。
int size()
返回 set 中的元素數(其容量)。
Object[] toArray()
返回一個包含 set 中所有元素的數組。
<T>
T[] toArray(T[] a)
返回一個包含此 set
中所有元素的數組;返回數組的運行時類型是指定數組的類型。
㈢ matlab中set函數怎麼用,具體的,中文的,高分
1、MATLAB給每種對象的每一個屬性規定了一個名字,稱為屬性名,而屬性名的取值成為屬性值。例如,LineStyle是曲線對象的一個屬性名,它的值決定著線型,取值可以是'-' 、':'、'-.'、'--'或'none'。
2、屬性的操作set函數的調用格式為:set(句柄,屬性名1,屬性值1,屬性名2,屬性值2,…)
help set
ET(H,'PropertyName',PropertyValue)
H為句柄名字,PropertyName 屬性名字,PropertyValue 屬性值
據此,set(Swarmscope,'EraseMode','xor','MarkerSize',12);
Swarmscope為句柄名,'EraseMode'為句柄圖像的擦拭方式,為xor,邏輯符號——或者,MarkerSize為句柄尺寸,大小為12。
(3)set方法怎麼用擴展閱讀
set<int> s;
......
set<int>::reverse_iterator rit;
for(rit=s.rbegin();rit!=s.rend();rit++)
元素刪除:與插入一樣,可以高效的刪除,並自動調整使紅黑樹平衡。
set<int> s;
s.erase(2); //刪除鍵值為2的元素
s.clear();
元素檢索:find(),若找到,返回該鍵值迭代器的位置,否則,返回最後一個元素後面一個位置
set<int> s;
set<int>::iterator it;
it=s.find(5); //查找鍵值為5的元素
if(it!=s.end()) //找到
cout<<*it<<endl;
else //未找到
cout<<"未找到";
車上的SET按鈕是巡航功能的設置,一般SET按鈕還要組合RES(重置)、CRUISE(巡航)和CANCEL(取消)才能實現巡航功能。想要正確使用SET按鈕,那我們就要看一看SET對應的巡航功能是怎麼使用的。巡航功能分為定速巡航和全速自適應巡航,以下是這兩種巡航功能的使用方法:㈤ 汽車res和set怎樣使用
Res按鈕的使用方法:在高速上使用定速巡航保持時速120,隨後踩下剎車暫時取消定速巡航車速跌至100,這時想讓車子回到120就可以按下res按鈕,車輛會自動加速至120。或者提前設置好時速後,按下res按鈕車輛會自動加速至設定的時速。
Set按鈕的使用方法:在高速上使用定速巡航保持時速120,這時想車速降低至100,可以松開油門直至車速跌至100後按下set按鈕,車輛就會以時速100持續行駛。如果本來在時速120,在設置好時速為100時,按下set按鈕,車輛就會自動減速至時速100。
(5)set方法怎麼用擴展閱讀:
其他功能鍵
1、ESP開關:是用來打開關閉車輛的ESP。車輛的ESP系統默認為工作狀態,為了享受更直接的駕駛感受,車主可以按下該按鍵關閉ESP系統。
2、油箱開啟鍵:該按鍵是用來在車內遙控開始油箱蓋。裝有該按鍵的車輛,駕駛員可以通過這個按鍵將油箱蓋從車內打開。
3、倒車雷達鍵:用來根據車主需要打開或關閉車上的倒車雷達系統,駕駛員可以按下該按鈕手動控制倒車雷達的工作。
㈥ set()方法到底怎麼用
public int setAge(){
return this.age;
}
public void setAge(int age){
this.age=age
}
因為為了封裝,一般的屬性都設置成為private(私有的),所以你無法用 .屬性 的方式來得到屬性值,因此此時用兩個public的方法來對屬性進行操作.getXX就是得到該屬性,該方法是public 的,返回的是xx屬性的類型(此題為int),不需要參數.而setXX就是對該屬性進行賦值,該方法為public 的,返回的是void(即不返回值,因為是賦值),要傳入一個參數,參數類型跟xx屬性類型相同(此為int型),該傳入的參數就是對xx屬性進行賦值.還有什麼不懂?
㈦ matlab中的set命令怎麼用啊
命令 set
功能 設置對象的屬性。
用法 set(H,'PropertyName',PropertyValue,…) 用屬性值'PropertyValue'設置關於用參量H
標志的對象(一個或多個)的屬性名'PropertyName'(一個或多個)。H 可以
為一句柄的向量。在這種情形下,命令set 可以設置所有對象的屬性值。
set(H,a) 用指定的屬性值設置由H 標志的對象的屬性。其中a 為一結構數組,該
結構數組的域名為對象的屬性名,域名值為相應屬性名的屬性值。
set(H,pn,pv…) 對由H 指定的所有對象中指定的細胞數組屬性名pn 設置為相應
的細胞數組屬性值pv。
set(H,pn,<m-by-n cell array>) 對於每m 個圖形對象設置n 個屬性值,其中
m=length(H),n 為包含屬性名的細胞數組pn 中包含的屬性名個數。即允許
用戶對每一對象的指定的屬性設置不同的屬性值。
a= set(h) 返回句柄h 中允許用戶設置的屬性名與可能的屬性值。輸出參量a 為一
結構數組,其域名為對象的屬性名,域名值為相應的屬性名對應的屬性值。
若沒有指定輸出參量a,則系統自動將信息顯示於屏幕,h 必須為標量。
a= set(0,'Factory') 返回那些用戶可以設置預設值的所有對象的屬性名,同時顯示
可能的屬性值,輸出參量a 為一結構數組,其域名為對象的屬性名,域名值
為相應的屬性名對應的屬性值,若沒有指定輸出參量a,則系統自動將信息
顯示於屏幕。
a= set(0,'FactoryObjectTypePropertyName')返回指定根對象(0)類型中指定的屬性
名ObjectTypePropertyName 的所有可能的屬性值。輸入參量是由固定的關鍵
字Factory、對象類型(如axes)與屬性名(如position 等)組成。
a= set(h,'Default') 返回由h 標記的對象上預設設置的值,其中h 必須是標量。
a= set(h,'DefaultObjectTypePropertyName') 返回指定對象h 的類型中指定的屬性
名ObjectTypePropertyName 的所有可能的屬性值。輸入參量是由固定的關鍵
字Factory、對象類型(如axes)與屬性名(如position 等)組成。
㈧ get和set方法的使用get和set方法的使用方法
1、工具/原料:編輯器Eclipse,MyEclipse,Idea(推薦使用idea)。
2、方法/步驟:了解get和set詞語的意思,set方法是為對象中的屬性賦值,get方法是從對象中獲取屬性值;了解Java面向對象編程的封閉性和安全性,用private來修飾,這樣其他類則不能訪問該變數。這樣便成了類內部,提高了數據的安全性;使用該類便new一個對象,賦值就用XX.setXXX,取值就用XX.getXXX。
㈨ Excel VBA中的Set是怎麼使用的
Set 語句
請參閱 示例 特性
將對象引用賦給變數或屬性。
語法
Set objectvar = {[New]
objectexpression | Nothing}
Set 語句的語法包含下面部分:
部分
描述
objectvar
必需的。變數或屬性的名稱,遵循標准變數命名約定。
New
可選的。通常在聲明時使用 New,以便可以隱式創建對象。如果 New 與
Set 一起使用,則將創建該類的一個新實例。如果
objectvar 包含了一個對象引用,則在賦新值時釋放該引用。不能使用 New 關鍵字來創建任何內部數據類型的新實例,也不能創建從屬對象。
objectexpression
必需的。由對象名,所聲明的相同對象類型的其它變數,或者返回相同對象類型的函數或方法所組成的表達式。
Nothing
可選的。斷絕 objectvar 與任何指定對象的關聯。若沒有其它變數指向
objectvar 原來所引用的對象,將其賦為 Nothing
會釋放該對象所關聯的所有系統及內存資源。
說明
為確保合法,objectvar 必須是與所賦對象相一致的對象類型。
Dim、Private、Public、ReDim以及 Static 語句都只聲明了引用對象的變數。在用
Set 語句將變數賦為特定對象之前,該變數並沒有引用任何實際的對象。
下面的示例說明了如何使用 Dim 來聲明 Form1 類型的數組。Form1 實際上還沒有實例。然後使用
Set 將新創建的 Form1 的實例的引用賦給 myChildForms 變數。在 MDI
應用程序中可以使用這些代碼來創建子窗體。
Dim myChildForms(1 to 4) As Form1
Set myChildForms(1) = New Form1
Set myChildForms(2) = New Form1
Set myChildForms(3) = New Form1
Set myChildForms(4) = New Form1
通常,當使用 Set 將一個對象引用賦給變數時,並不是為該變數創建該對象的一份副本,而是創建該對象的一個引用。可以有多個對象變數引用同一個對象。因為這些變數只是該對象的引用,而不是對象的副本,因此對該對象的任何改動都會反應到所有引用該對象的變數。不過,如果在
Set 語句中使用 New 關鍵字,那麼實際上就會新建一個該對象的實例。