天天看点

类的继承关系声明和访问修饰

类在声明同时可以包含声明继承关系

如何没有声明基类,则默认为从object继承

明确声明类时,需要描述类的各种约束

不可以直接派生的类

System.Array

System.Delegate

System.Enum

System.ValueType

派生类和父类可以有同样级别的访问修饰

类的默认声明是内部的,但可以显式声明

1

类的继承关系声明和访问修饰

 // 显示声明类为内部类

2

类的继承关系声明和访问修饰

 internal class WarehouseBase//仓库

3

类的继承关系声明和访问修饰

 { 

4

类的继承关系声明和访问修饰

5

类的继承关系声明和访问修饰

 }

6

类的继承关系声明和访问修饰

7

类的继承关系声明和访问修饰

 //默认方式声明的类也是内部类

8

类的继承关系声明和访问修饰

 abstract class WarehouseBase//仓库

9

类的继承关系声明和访问修饰

 {

10

类的继承关系声明和访问修饰

11

类的继承关系声明和访问修饰

12

类的继承关系声明和访问修饰

子类(即派生类)的访问修饰不能比基类(即父类)高

类的继承关系声明和访问修饰

 public abstract class WarehouseBase//仓库

类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰

 //public->internal可以

类的继承关系声明和访问修饰

 internal class AutomaticWarehouse : WarehouseBase //自动化仓库 

类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰

13

类的继承关系声明和访问修饰

14

类的继承关系声明和访问修饰

 //internal->public不可以

15

类的继承关系声明和访问修饰

 //可访问性不一致: 基类“Space.AutomaticWarehouse”比类“Space.SolidWarehouse”的可访问性低

16

类的继承关系声明和访问修饰

 public class SolidWarehouse : AutomaticWarehouse//立体仓库

17

类的继承关系声明和访问修饰

18

类的继承关系声明和访问修饰

19

类的继承关系声明和访问修饰

20

类的继承关系声明和访问修饰

21

类的继承关系声明和访问修饰

22

类的继承关系声明和访问修饰

 //public->public可以

23

类的继承关系声明和访问修饰

 public sealed class VirtualWarehouse : WarehouseBase //虚拟仓库 

24

类的继承关系声明和访问修饰

25

类的继承关系声明和访问修饰

26

类的继承关系声明和访问修饰

类不可以显式声明为 private、protected 或 protected internal

类的继承关系声明和访问修饰

 //错误

类的继承关系声明和访问修饰

 private abstract class WarehouseBase//仓库

类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰

 protected class AutomaticWarehouse : WarehouseBase //自动化仓库 

类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰

 protected internal class SolidWarehouse : AutomaticWarehouse//立体仓库

类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰

但可以在类的内部显示的声明private、protected 或 protected internal

类的继承关系声明和访问修饰

 public class AutomaticWarehouse : WarehouseBase //自动化仓库 

类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰

 private sealed class PlaneWarehouse : WarehouseBase //平面仓库 

类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰

 protected internal sealed class Stack : WarehouseBase

类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰
类的继承关系声明和访问修饰

本文转自shyleoking 51CTO博客,原文链接:http://blog.51cto.com/shyleoking/806298

继续阅读