C# 学习 —— 类(Class)

  • 类用class进行声明,可以包含属性、方法、构造函数、析构函数等等。
  • 使用 static 关键字把类成员定义为静态的。当我们声明一个类成员为静态时,意味着无论有多少个类的对象被创建,只会有一个该静态成员的副本。关键字 static 意味着类中只有一个该成员的实例。静态变量用于定义常量,因为它们的值可以通过直接调用类而不需要创建类的实例来获取。静态变量可在成员函数或类的定义外部进行初始化。你也可以在类的定义内部初始化静态变量。

C# 继承

继承是面向对象设计的重要概念之一,继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易。
如:

//基类
  class Base
  {
  	public int name;
  	public int age;
  }
 class Student:Base
 {
 	public int core;
 }

上列中Student中也就有的name变量,C#不支持多重继承,但是可以通过接口(Interface)来实现多重继承。

  • 访问级别:protected基类和派生类可访问,private仅基类可以访问,public基类和派生类都可以访问
  • 继承行为:基类的成员可以是虚拟的,由继承它的类重写

C# 多态

多态性意味着多重形式。多态性往往表现为一个接口,多个功能。多态性可以是静态的或动态的。

  • 在静态多态性中,函数的响应是在编译时发生的:

    函数重载
    运算符重载

  • 在动态多态性中,函数的响应是在运行时发生的。
    C# 允许您使用关键字 abstract 创建抽象类,用于提供接口的部分类的实现。抽象类包含抽象方法,抽象方法可被派生类实现。派生类具有更专业的功能。

  • 不能创建抽象类的实例

  • 您不能在一个抽象类外部声明一个抽象方法

  • 通过在类定义前面放置关键字 sealed,可以将类声明为密封类。当一个类被声明为 sealed 时,它不能被继承。抽象类不能被声明为 sealed。

  • 当有一个定义在类中的函数需要在继承类中实现时,可以使用虚方法。虚方法是使用关键字 virtual 声明的。虚方法可以在不同的继承类中有不同的实现。对虚方法的调用是在运行时发生的。

动态多态性是通过 抽象类 和 虚方法 实现的。

常用关键字

  • virtual——方法可以重写
  • abstract——方法必须在非抽象的派生类中重写(只用于抽象类中)
  • override——方法重写了一个基类方法(如果方法被重写,就必须使用该光健字)
  • extern——方法定义放在其他地方
  • internal——只要是在同一个程序集的中的其他类都可以访问
  • abstract ——可以用于类、方法、属性、事件和索引指示器(indexer),表示其为抽象成员abstract 不可以和 static 、virtual 一起使用声明为 abstract 成员可以不包括实现代码,但只要类中还有未实现的抽象成员(即抽象类),那么它的对象就不能被实例化,通常用于强制继承类必须实现某一成员
  • sealed——可阻止其他类继承自该类。用于方法和属性时,表示该方法或属性不能再被重写,必须和 override 关键字一起使用,因为使用 sealed 修饰符的方法或属性必须是基类中的虚成员,所以也不能用于修饰基类的方法和属性
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值