c# 多态

多态的例子:建立抽象类,包含抽象abstract方法,建立多个子类继承抽象类,并使用override重写抽象方法,把这些子类加到一个抽象类集合里,调用抽象方法就可以执行子类的方法,而不必关心子类的具体实现。
接口和抽象类:类只能继承一个,接口可以继承多个。继承抽象类的子类有共性,而接口只针对单一功能,比如老鹰和企鹅都继承鸟类,但企鹅不能飞,所以鸟类里不能有飞的方法,这时可以单独建立一个飞的接口,老鹰继承这个接口,实现飞。
虚方法和抽象方法:虚方法有方法体,存在于一个正常的类中,不必实现,抽象方法没有方法体,必须存在于抽象类中,必须被实现,抽象类不能实例化,只被能继承。
base和this的使用:base调用基类的构造函数,this调用本类的构造函数,调用顺序是从冒号开始顺序执行。

class Program
	{
		static void Main(string[] args)
		{
			objClass a = new objClass();
			//输出 基类有参构造函数str本类有参构造函数str本类无参构造函数			
			Console.ReadLine();
		}

		public class BaseClass
		{
			public BaseClass()
			{
				Console.Write("基类无参构造函数");
			}

			public BaseClass(string name)
			{
				Console.Write("基类有参构造函数" + name);
			}
		}

		public class objClass : BaseClass
		{
			public objClass() : this("str")
			{
				Console.Write("本类无参构造函数");
			}
			public objClass(string name) : base(name)
			{
				Console.Write("本类有参构造函数" + name);
			}
		}
	}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值