C#编程之C#基础(二)

      接着之前的话题,学着工程生成的默认的程序,我们也来定义一个属于我们自己的类。在原有的工程下面增加一个新的文件,命名为MyClass.cs。双击打开这个文件,这个文件中的内容与之前的内容几乎一样,除了类的名字不一样,类中没有定义方法。

 

      以此我们可以看出。命名空间的定义方法为:

类的定义方法为:

然后我们在这个类中定义一个方法:SayHi。

回到Program这个类下,在Main方法中调用这个方法,就像我们调用Console.WriteLine()那样,我们输入一个MyClass.SayHi();

这时程序会提示一个错误:Error 1 'HelloWorld.MyClass.SayHi()' is inaccessible due to its protection level F:/Using Projects/CSPrograming/CSAccidence/CSAccidence/HelloWorld/Program.cs 12 21 HelloWorld。

为什么会这样呢?在之前,我们了解过一些关键字,其中有几个修饰符大家应该还记得:public,private,protected,internal。这几个关键字的作用就是用来修饰类、方法和属性的访问权限的。我们改一下SayHi方法

然后再编译,这下正常了吧?如果不知道为什么的话请再仔细看一下这几个关键字的描述,并找出他们的区别:

 

public 关键字是类型和类型成员的访问修饰符。公共访问是允许的最高访问级别。对访问公共成员没有限制。

 

protected 关键字是一个成员访问修饰符。受保护成员在其所在的类中可由派生类实例访问。有关 protected 与其他访问修饰符的比较,请参见可访问性级别

 

private 关键字是一个成员访问修饰符。私有访问是允许的最低访问级别。私有成员只有在声明它们的类和结构体中才是可访问的。

 

internal 关键字是类型和类型成员的访问修饰符。只有在同一程序集的文件中,内部类型或成员才是可访问的。

 

      在默认情况下类的访问修饰符为public,而类的成员的修饰符为private。所以如果我们定义一个类而不加任何修饰,那么它的访问级别就是public,而成员(方法,属性)的访问级别为private。这也是为什么MyClass可以直接访问了,而SayHi却不能访问。

      在C#语言规范里面,定义公共类型和私有成员不用添加任何修饰符,因为只要是一个程序员都可以看出这代表着什么。

    

      在class MyClass前修加上一个修饰符,看下会出现什么效果?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值