C#类和类的实例
类 ,顾名思义就是分类、类别的意思。我们要面向对象编程,就需要对不同的事物进行分类。类可以说是.net面向对象的核心。
类:就是具有相同的属性和功能的对象的抽象的集合。
1.类的定义
<访问修饰符> class <类名> { 类成员(字段、属性、方法、事件)}
举例说明,比如“人类”这就是一个类,里面可以包含属性 比如性别,种族,国家等。除了包含属性之外,还包含一些其他功能,比如:吃饭、睡觉等,可以理解为类的方法。
代码,如下:
 1         class Person
 2         {
 3             public string gender { get; set; }
 4             public string race { get; set; }
 5             public string Country { get; set; }
 6             public string Eat(string strCountry)
 7             {
 8                 switch (strCountry)
 9                 {
10                     case "美国":
11 
12                         return "爱吃西餐";
13 
14                     case "韩国":
15 
16                         return "爱吃泡菜";
17                     default:
18                         return "不知道";
19                 }
20             }
21         }
对于类的修饰符,支持上节说的五个访问修饰符
| 访问修饰符 | 说明 | 
| public | 公有访问。不受任何限制。 | 
| private | 私有访问。只限于本类成员访问,子类,实例都不能访问。 | 
| protected | 保护访问。只限于本类和子类访问,实例不能访问。 | 
| internal | 内部访问。只限于本项目内访问,其他不能访问。 | 
| protected internal | 内部保护访问。只限于本项目或是子类访问,其他不能访问 | 
- 类的命名空音默认修饰符为:public
- 类默认的访问修饰符为:public
- 类的成员默认的访问修饰符则为:private
- 类成员的作用域永远超不出包含它的类
- 可以申明一个静态类static class ClassName,但是它的成员必须全部显式定义为静态
2.类的实例化
类的实例 :就是类的一个真实的对象
<类名> <实例名> = new <类名>([构造函数的参数])
比如上面定义的人类,是一个类,而具体的某一个人,就是人类的实例,从类到类的实例的这个过程,叫类的实例化。
Person person=new Person();
3.构造函数
构造函数,又叫构造方法,就是对类进行初始化的方法。
其名称同类名,没有返回值,也不需要void ,在new的时候调用。
所有的类都有构造函数,只不过C#会默认一个无参数的构造函数,如果不定义,则使用默认。
如果定义了构造函数,则默认失效。
4.嵌套类
C#允许使用类嵌套
嵌套类型被视为是外层类型的成员,因此嵌套类型可以访问外层类型中的所有其他成员。
根据类的成员默认访问修饰符为:private的原则,嵌套类默认访问修饰符为private
嵌套类型可以自由访问外层类型的成员,而不在乎那些成员是否私有。外层类型如果想访问嵌套类型,则要受到访问规则的限制。
关于嵌套类的继承(后面会详细说明继承),如果一个类型继承了一个包含嵌套类型的类型,那么它也会自然的继承基类型中的嵌套类型,因为那个嵌套类型本身就是基类型的一个成员。因此只要那个嵌套类型不是private或者天生不能被继承的,子类型中新声明的嵌套类型还可以继承那个嵌套类型。
下面是嵌套类代码:
1 static class Tree
2 {
3     private  static string _treeLeafColor = "Green";
4     static class  AppleTree
5     {
6         private static string appleTreeLeaf = _treeLeafColor;
7     }
8 }
要点:
1.类可以使用修饰符static声明为静态类,申明静态后,类下所有成员必须是静态;
2.类的默认访问修饰符为:public,定义一个私的类时,要添加修饰符private;而类的成员默认访问修饰符则为:private,公有方法需要申明为:public
3.类的命名规范:采用首字母大写规则,不要使用系统类名或与修饰符相同的名字;
 
                    
                     
                    
                 
                    
                
 

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号