C# 抽象abstract、接口、扩展方法详解

C#常用方法详细讲解二

  1. 抽象方法(abstract)
  2. 扩展方法(Extend)
  3. 扩展接口(InterfaceExtend)

转载请标明出处: Python Excellent的博客

一、抽象方法(abstract)

     * 抽象方法:
     *       定义:一定要写在抽象类里面,不带方法体代码,不能进行实例化
     *       特点:只规范一次
     *       使用场合:强制性一定要实现该抽象方法的子类
     *       
     *       与接口区别及使用场合:
     *       区别: 1--抽象类单继承 接口可以多继承
     *             2--抽象类中也可声明其它普通方法,虚方法等,接口只能写规范,不能写实现
     *       使用场合:抽象类 一般用于不经常改动,且抽象范围大的事件、人,汽车
     *                接口  适用于一些经常修改,但是需要规范的地方(如人的行为)
class Test
{
   
	//控制台测试输出
	static void Main(string[] args)
	{
   
	    //5--抽象方法
        AbstractMethodChild abstractChild = new AbstractMethodChild();
         Console.WriteLine($"重写抽象方法输出:7 + 8 = {
     abstractChild.Calculate(7, 8)}" + "\n");

         InterfaceClass AddTest =  new InterfaceClass();
         InterfaceClass SubTest = new InterfaceClass();
         Console.WriteLine($"接口方法输出:7 + 8 = {
     AddTest.Add(7, 8)}" + "\n");
         Console.WriteLine($"接口方法输出:7 - 8 = {
     SubTest.Sub(7, 8)}" + "\n");
	} 
	
	#region 抽象类
    public abstract class AbstractMethod
    {
    
      /// <summary>
      /// 已规范的抽象方法 
      /// </summary>
      /// <param name="a"></param>
      /// <param name="b"></param>
      /// <returns></returns>
      public abstract int Calculate(int a, int b);//无需具体方法体,只需规范即可

      //抽象类中也可声明其它普通方法,虚方法等
      public virtual <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python Excellent

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值