ITPub博客

首页 > Linux操作系统 > Linux操作系统 > .net框架笔记类型成员及其访问限度

.net框架笔记类型成员及其访问限度

原创 Linux操作系统 作者:iDotNetSpace 时间:2008-09-16 13:10:32 0 删除 编辑

一.

下面这段代码定义了一个包括所有可能成员的类型.

 


<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--> 1class SomeType
 2    {
 3        //嵌套类
 4        class SomeNestedType { }
 5
 6        //常数、只读字段、静态读写字段
 7        const Int32 SomeConstant = 1;
 8        readonly int SomeReadOnlyField = 2;
 9        static int SomeReadWriteField = 3;
10
11        //类构造器
12        static SomeType()
13        {
14            //..
15        }

16
17        //实例构造器
18        public SomeType()
19        {
20            //..
21        }

22        public SomeType(int x)
23        { 
24            //..
25        }

26
27        //实例方法和静态方法
28        String InstantceMethod()
29        {
30            return null;
31        }

32        static void Method()
33        {
34 
35        }

36
37        //实例属性
38        int SomeProp
39        {
40            get { return 0; }
41            set { }
42        }

43
44        //实例索引器属性
45        public int this[String s]
46        {
47            get { return 0; }
48            set { }
49        }

50
51        //实例事件
52        event EventHandler someEvent;
53    }

二:访问限定修饰符和预定义特性

1.

private 仅可以被所定义类型(或其任何嵌套类型)中的方法访问.

protected 仅可以被所定义类型(或其任何嵌套类型)及其派生类型中的方法访问,与所在程序集无关.

Internal 仅可以被所定义程序集中的方法访问.

protected internal 仅可以被所定义类型.派生类型以及任何定义在同一程序集中方法访问.

public 可以被所以程序集中的所有方法访问。

2,

类型预定义特性

abstract 不能被实例化.可以用作其他类型的基类型.如果派生类不是抽象的,则可以构造他们的实例.

sealed 不能用作基类型

3.

字段预定义特性

static 字段是类型状态,而非对象状态的一部分

readonly 字段仅可以在构造器方法中被赋值.

4.

方法预定义特性

static 方法和类型,而非类型的实例相关.静态方法不能访问类型中的实例字段或实例方法,因为静态方法对对象的状态一无              所知

默认 方法和类型的实例而非类型本身关联.方法可以访问实例字段和实例方法,也可以访问静态字段和静态方法.

virtual 当方法被调用时,无论对象是否被转换为其基类型,都只有位于对象继承链最末端的方法实现会被调用.仅应用于实例方法.

new 方法的子类实现不会重写基类型中的实现.而仅仅是将其隐藏起来.仅用于虚方法.

override 显示表明方法在重写基类型中的虚方法.仅用于虚方法.

abstract 表示派生类型必须提供和该抽象方法签名匹配的实现.含抽象方法的类型是一个抽象类型.

sealed 派生类不能重写该方法.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12639172/viewspace-448592/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 数据库范式
请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    2376
  • 访问量
    5766532