藍(lán)鷗(www.lanou3g.com)是一家集產(chǎn)、學(xué)、研、創(chuàng)為一體的綜合性移動(dòng)互聯(lián)網(wǎng)研發(fā)培訓(xùn)機(jī)構(gòu),致力于iOS開發(fā)、Unity3D游戲開發(fā)、Android開發(fā)、HTML5前端開發(fā)和Web安全攻防等技術(shù)人才的培養(yǎng)。
一、訪問修飾符
public——公共的,在哪里都能用
private——私有的,只能夠在當(dāng)前機(jī)構(gòu)體重使用,其他任何地方都不能
訪問修飾符舉例說明
usingSystem;
namespaceLesson_03
{
structPoint2{
//public——公共的,在哪里都能用
publicfloatx;
//private——私有的,只能夠在當(dāng)前機(jī)構(gòu)體重使用,其他任何地方都不能夠使用
privatefloaty;
}
classMainClass
{
publicstaticvoidMain(string[]args)
{
Point2p;
p.x=1f;
//無訪問權(quán)限的,這樣使用會(huì)報(bào)錯(cuò)!
//p.y=2f;
Console.WriteLine("HelloWorld!");
}
}
}
二、訪問權(quán)限
所以的類、結(jié)構(gòu)體、以及它們所包含的成員都具有訪問權(quán)限,用來決定誰可以使用他們
Public公共的-訪問不收限制,誰都可以用
Private 私有的,該權(quán)限說明符所修飾的成員只能在其所在的類或結(jié)構(gòu)體中訪問,外界不能訪問
Ptotected 受保護(hù)的-只有在其所在類或者子類中可以訪問,不能再結(jié)構(gòu)體中使用,因?yàn)闆]有繼承
Internal 內(nèi)部的-同一程序集中的任何代碼都可以訪問該類型或成員,但在其他程序集中不可以訪問
訪問權(quán)限舉例說明:
usingSystem;
namespaceLesson_03
{
//internal——內(nèi)部的,只有在當(dāng)前程序集中才能夠使用
//默認(rèn)權(quán)限,在這里就是internal
structPoint2{
//public——公共的,在哪里都能用
publicfloatx;
//private——私有的,只能夠在當(dāng)前機(jī)構(gòu)體重使用,其他任何地方都不能夠使用
privatefloaty;
//internal——用來修飾元素,內(nèi)部的
internalfloatz;
//portected——受保護(hù)的,不能夠在結(jié)構(gòu)體中使用,只能在類中使用,只有當(dāng)前類或它的子類可以訪問
}
classMainClass
{
publicstaticvoidMain(string[]args)
{
Point2p;
p.x=1f;
//無訪問權(quán)限的,這樣使用會(huì)報(bào)錯(cuò)!
//p.y=2f;
Console.WriteLine("HelloWorld!");
}
}
}
三,默認(rèn)權(quán)限
沒有嵌套在其他類或者結(jié)構(gòu)體的類型,只能是public或者internal,或者默認(rèn)是internal
類成員可以是任意的訪問權(quán)限,不加修飾符默認(rèn)是private的
源代碼:
singSystem;
namespaceLesson_03
{
//internal——內(nèi)部的,只有在當(dāng)前程序集中才能夠使用
//默認(rèn)權(quán)限,在這里就是internal
structPoint2{
//public——公共的,在哪里都能用
publicfloatx;
//private——私有的,只能夠在當(dāng)前機(jī)構(gòu)體重使用,其他任何地方都不能夠使用
privatefloaty;
//internal——用來修飾元素,內(nèi)部的
internalfloatz;
//portected——受保護(hù)的,不能夠在結(jié)構(gòu)體中使用,只能在類中使用,只有當(dāng)前類或它的子類可以訪問
//默認(rèn)權(quán)限是private——私有的
intage;
}
classMainClass
{
publicstaticvoidMain(string[]args)
{
Point2p;
p.x=1f;
//無訪問權(quán)限的,這樣使用會(huì)報(bào)錯(cuò)!
//p.y=2f;
Console.WriteLine("HelloWorld!");
}
}
}