您的位置:首页 > 职场人生

特别的构造函数:构造函数的修饰

2007-02-07 22:40 239 查看
构造函数并不一定都是public的,以下的代码是不是另拟感到构造函数的奇特阿?

1

public class Class1//永远无法被实例化的类

2





{

3

//这个类没有可以被外部访问的构造函数

4

private Class1()

5





{

6

}

7

}

8


9

public class Class2//只可以在本程序内实例化的类

10





{

11

internal Class2()

12





{

13

}

14

}

15


16

public class Class3//只可以通过自身实例化的类

17





{

18

private Class3()

19





{

20

}

21

//private的构造函数可以被自身的方法调用,所以可以用Class3.CreateClass3()来创建实例

22

public static Class3 CreateClass3()

23





{

24

return new Class3();

25

}

26

}

27


28

public class Class4

29





{

30

//Class4不能被实例化,但又要求子类在继承时构造有参

31

protected Class4(int i)

32





{ }

33


34

}

35


36

public class Class4Sub : Class4

37





{

38


39

public Class4Sub(int i)

40

: base(i)

41





{

42


43

}

44

}

45


46

public class Class5//要求子类必须显示调用父类构造函数的

47





{

48

public Class5(int i)

49





{ }

50

}

51


52

public class Class5Sub : Class5

53





{

54

public Class5Sub()

55

: base(0)

56





{ }

57

public Class5Sub(int i)

58

: base(i)

59





{ }

60

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息