C#类型声明简单分析

开发 后端
这里介绍C#类型声明,类成员可以包括:常数、字段、方法、属性、事件、索引器、运算符、实例构造函数、析构函数、静态构造函数和嵌套C#类型声明。
C#语言有很多值得学习的地方,这里我们主要介绍C#类型声明,包括介绍有五种可能的可访问性形式等方面。

C#类型声明定义新的引用类型。一个类可以从另一个类继承,并且可以实现多个接口。

类成员可以包括:常数、字段、方法、属性、事件、索引器、运算符、实例构造函数、析构函数、静态构造函数和嵌套C#类型声明。每个成员都有关联的可访问性,它控制能够访问该成员的程序文本区域。有五种可能的可访问性形式。下表概述了这些形式。

形式 直观含义
◆public不限制访问。
◆protected访问限于该成员所属的类或从该类派生来的类型。
◆internal访问限于此程序。
◆protected internal访问限于此程序或从该成员所属的类派生的类型。
◆private访问限于该成员所属的类型。

  1. using System;  
  2. class MyClass  
  3. {  
  4.    public MyClass() {  
  5.       Console.WriteLine("Instance constructor");  
  6.    }  
  7.    public MyClass(int value) {  
  8.       MyField = value;  
  9.       Console.WriteLine("Instance constructor");  
  10.    }  
  11.    ~MyClass() {  
  12.       Console.WriteLine("Destructor");  
  13.    }  
  14.    public const int MyConst = 12;  
  15.    public int MyField = 34;  
  16.    public void MyMethod(){  
  17.       Console.WriteLine("MyClass.MyMethod");  
  18.    }  
  19.    public int MyProperty {  
  20.       get {  
  21.          return MyField;  
  22.       }  
  23.       set {  
  24.          MyField = value;  
  25.       }  
  26.    }  
  27.    public int this[int index] {  
  28.       get {  
  29.          return 0;  
  30.       }  
  31.       set {  
  32.          Console.WriteLine("this[{0}] = {1}", index, value);  
  33.       }  
  34.    }  
  35.    public event EventHandler MyEvent;  
  36.    public static MyClass operator+(MyClass a, MyClass b) {  
  37.       return new MyClass(a.MyField + b.MyField);  
  38.    }  
  39.    internal class MyNestedClass  
  40.    {}  

【编辑推荐】

  1. C# 3.0编译器简单介绍
  2. C#使用函数重载学习笔记
  3. Visual C#对数据库处理概述
  4. C#具有隐式类型声明描述
  5. C#使用SharpZipLib分析
责任编辑:佚名 来源: 51cto.com
相关推荐

2009-09-01 10:49:28

C#具有隐式类型声明

2009-08-03 17:51:43

C#引用类型

2009-08-27 10:19:22

C#匿名类型

2009-09-03 16:55:58

C#引用类型

2009-09-03 17:57:06

C#声明事件

2009-09-01 17:32:04

C#版本控制

2009-08-31 18:24:26

编译C#文件

2009-08-26 18:00:07

C#内部类

2009-08-27 18:02:22

C#事件处理

2009-08-27 18:05:54

C#索引功能

2009-08-27 15:34:38

C#命名空间

2009-09-01 18:36:35

C#委托实例

2009-09-01 10:58:46

C#匿名类型对象

2009-09-04 10:16:30

C#数据类型

2009-09-07 10:48:53

C#数据类型

2009-09-03 17:13:19

C#建立项目

2009-09-02 10:59:02

C#单路代理

2009-08-26 14:01:18

C#标识符

2009-08-31 16:01:31

C#和设计模式

2009-08-27 10:44:21

C#静态变量
点赞
收藏

51CTO技术栈公众号