• class 关键字 interface 接口 internal 当前项目内部访问 abstract 抽象类型 sealed密封类型
    • System.Object 所有的类都继承自System.Object
    • 接口和抽象类
      • 相似:1.都包含可由派生类继承的成员 2.都不能实例化,但可以声明这些类型的变量
      • 区别:1.派生类只能继承一个基类,即只能直接继承一个抽象类(但可以用一个继承链包含多个抽象类 2.类可以使用多个接口 (这两种效果是类似的)
      • 抽象类可以拥有抽象成员(没有代码体,且必须在派生类中实现,否则派生类本身必须也是抽象的)和非抽象成员(拥有代码体,也可以是虚拟的,以便在派生类中重写) private, protected, internal,protected internal,
      • 接口成员必须都在使用接口的类上实现--没有代码体 public
      • 接口中不能包含字段,构造函数,析构函数,静态成员或常量。
    • 浅度和深度复制(11章)
    • 静态类与非静态类
      • 静态成员
        • 1:非静态类可以包含静态的方法、字段、属性或事件;
        • 2:无论对一个类创建多少个实例,它的静态成员都只有一个副本(体现在在A实例改变了某个静态变量的值将影响所有的实例);
        • 3:静态方法和属性不能访问其包含类型中的非静态字段和事件,并且不能访问任何对象的实例变量;
        • 4:静态方法只能被重载,而不能被重写,因为静态方法不属于类的实例成员;
        • 5:虽然字段不能声明为 static const,但 const 字段的行为在本质上是静态的。这样的字段属于类,不属于类的实例。因此,可以同对待静态字段一样使用 ClassName.MemberName 表示法来访问 const 字段;
        • 6:C# 不支持静态局部变量(在方法内部定义静态变量)。
      • 非静态类
        • 非静态类里即可有静态成员,也可以有非静态成员。
        • 非静态里的静态方法可直接调用即 :<非静态 类名.静态方法 >
        • 非静态里的非静态方法需要实例化后才能被调用,格式如下:<非静态类名   变量=new 非静态类名();>
  • 相关阅读:
    P1268 树的重量
    P2419 [USACO08JAN]牛大赛Cow Contest
    P1306 斐波那契公约数
    P2905 [USACO08OPEN]农场危机Crisis on the Farm
    P1081 开车旅行
    P2906 [USACO08OPEN]牛的街区Cow Neighborhoods
    P1550 [USACO08OCT]打井Watering Hole
    P2746 [USACO5.3]校园网Network of Schools
    P1613 跑路
    【BZOJ4868】期末考试(整数三分)
  • 原文地址:https://www.cnblogs.com/liuke-1264746554/p/10599225.html
Copyright © 2020-2023  润新知