类,继承

类主要成员

字段、属性、索引器、方法、构造函数、析构函数

字段:用来存储数据

属性:封装字段,控制字段读写属性

索引器:也叫有参属性,其参数是数组或者集合的下标,每个类中只能有一个索引器

方法:实现某种功能的代码段

构造函数:在类实例化时调用,构造函数可以重载(方法参数的类型和个数不同)

析构函数:只能有一个,在对象释放时调用

 

 

 

 

类的访问修饰符

new  public  protected   internal  private  abstract(抽象) sealsd(密封) static(静态)

 

类定义中可以使用的访问修饰符和修饰符组合
none or internal
类只能在当前工程中访问

public
类可以在任何地方访问

abstract or internal abstract
类只能在当前工程中访问,不能实例化,只能继承

public abstract
类可以在任何地方访问,不能实例化,只能继承

sealed or internal sealed
类只能在当前工程中访问,不能派生,只能实例化


public sealed
类可以在任何地方访问,不能派生,只能实例化

 

static or internal static

类可以在当前工程访问,不能派生,不能实例化,访问其内部成员时用类名加点

 

静态类

不能继承,不能实例化

  

 

抽象类

不能实例化,其成员可以是抽象的,也可以不是。抽象类主要用于被继承,让子类实现其含有的抽象方法。

 

密封类

不能被继承,可以实例化

 

 

继承

隐藏同名方法:

当子类中的方法和父类中的方法命名相同时候,实例化子类后,子类方法会将继承自父类的同名方法(隐式)隐藏,调用该方法时,始终是执行子类中的方法。这种情况下,在子类中定义与父类同名方法时,应该使用new关键字,显式隐藏继承自父类的同名方法。

 

覆盖同名方法:

父类方法必须为虚方法,使用关键字virtual,子类要覆盖继承自父类中同名的方法,则要使用override关键字。

桂素伟老师形象的把这两个关键字比喻为 呼叫(virtual) 和 应答(override),有呼叫有应答正常,有呼叫没有应答正常,没呼叫有应答不正常。

 

 

抽象类的继承

 

继承过程中,构造函数问题

子类继承父类,实例化子类时候,就先实例化父类,如果父类构造函数中含有参数,而子类中构造函数没有参数,就会出现错误。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值