c#中继承和接口的区别与联系
一. 定义:

   1. 继承:    把两个或多个类的相同属性提取出来,将这些属性合在一起建立父类!例:class A
{public void Sum(int i,int j){int sum = i + j;Console.WriteLine("I am A ,my sum ={0}",sum);}
}
class B : A
{public void Minus(int i,int j){int minus = i - j;Console.WriteLine("I am B ,my minus ={0}", minus);this.Sum(3, 4);}}
class InheritanceTest1
{static void Main(string[] args){B b = new B();b.Minus(3, 4);Console.Read();}
}

结果:I am B ,my minus=-1

 I am A ,my sum = 72.接口:

首先记住:类是对象的抽象,接口是方法的抽象。类的概念就不说了。单说接口吧。如果方法跨越不同类的对象,可使用接口,即然你语法很熟了,我就不去写代码了。

举个例子吧,一个外地的朋友突然来看你,你常常会问“你是坐车来的还是坐飞机来的?”

那么可以定义了三个类:飞机类,船类,车类(当然,你也可以进一步把这三个类抽象为一个类,运输类。但为了说明接口,暂不作进一步抽象)。定义一个接口:客运。

三种类的对象都可以各自去实现“客运”这一接口,当然它们的实现方式各不相同。

再举一例,鸟类,飞机类,神仙类都能“飞”。这三种类都以各自的方式去实现“飞”这一接口的。

当然这两个例子只能浅浅的说明接口,以后你在运用时去深入理解吧。但记住:接口是是方法的抽象。如果方法跨越不同类的对象,可使用接口。

例:
在C#里面不可以有变量。只可以有没有实现的方法。然后他要有实现类的。就是实现这个接口的类。。
在Java,C#都不允许多继承的。。所谓多继承就是一个子类继承多个父类。。
有了接口就间接的实现多继承。。也就是一个类继承一个父类~再实现以个接口。。

c#中继承和接口的区别与联系相关推荐

  1. php 抽象类 接口 区别,PHP中抽象类、接口的区别与选择分析

    本文实例分析了PHP中抽象类.接口的区别与选择.分享给大家供大家参考,具体如下: 区别: 1.对接口的使用是通过关键字implements.对抽象类的使用是通过关键字extends.当然接口也可以通过 ...

  2. C#中抽象类和接口的区别与应用场景

    一直对这两个基础概念没有很好的认识,在网上发现一个我能够理解的基础概念理解,存一下,反复看. C#中抽象类和接口的区别与应用场景一. 1.抽象类:抽象类是特殊的类,只是不能被实例化;和普通类一样里面什 ...

  3. JDK8 中抽象类和接口的区别

    英文原文:https://www.javacodegeeks.com/2014/04/abstract-class-versus-interface-in-the-jdk-8-era.html jdk ...

  4. python中继承和组合的区别_Py修行路 python基础 (十五)面向对象编程 继承 组合 接口和抽象类...

    一.前提回忆: 1.类是用来描述某一类的事物,类的对象就是这一类事物中的一个个体.是事物就要有属性,属性分为 1:数据属性:就是变量 2:函数属性:就是函数,在面向对象里通常称为方法 注意:类和对象均 ...

  5. C#中抽象类和接口的区别

    一.抽象类:       抽象类是特殊的类,只是不能被实例化:除此以外,具有类的其他特性:重要的是抽象类可以包括抽象方法,这是普通类所不能的.抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆 ...

  6. C#中抽象类和接口的区别与使用

    一.抽象类: 抽象类是特殊的类,只是不能被实例化:除此以外,具有类的其他特性:重要的是抽象类可以包括抽象方法,这是普通类所不能的.抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆盖它们.另外 ...

  7. java 抽象类与接口区别是什么_JAVA中抽象类与接口的区别,分别在什么情况下使用它们...

    在网上看到很多人问关于"抽象类与接口的区别",因此本人想通过自己多年对JAVA开发的经验来总结一下抽象类与接口的区别以及分别在什么情况下使用它们. 在Java语言中, abstra ...

  8. Java中抽象类和接口的区别?

    抽象类和接口的概念 抽象类 抽象类必须用 abstract 修饰,子类必须实现抽象类中的抽象方法,如果有未实现的,那么子类也必须用 abstract 修饰.抽象类默认的权限修饰符为 public,可以 ...

  9. Java中继承和实现的区别【单继承,多实现】

    继承:如果多个类的某个部分的功能相同,那么可以抽象出一个类出来,把他们相同的部分都放到父类中,让他们都继承这个类. 实现:如果多个类处理的目标都是一样的,但是处理的方法不同,那么就可以定义一个接口,让 ...

最新文章

  1. 不关闭seLinux解决vsftpd服务本地用户不能登录问题(500 OOPS: cannot change directory:/home/***
  2. mysql分布式数据库实践论文_新浪微博基于MySQL的分布式数据库实践
  3. c++ scanf输入字符串_在C语言中,你真的搞清楚字符串了吗?
  4. MySQL instr()函数
  5. 从链接上获取参数值, location.href上获取参数
  6. java应用程序怎样获取外接设备信号 通过usb
  7. Python稳基修炼的经典案例12(计算机二级、初学者必会的字符文件处理)
  8. Purus系统常见使用问题及解决方式FAQ 1
  9. adx-desc-adtype统计
  10. 5个冷门的MacOS快捷键,小众但好用
  11. 使用Hibernate的项目中对VO的理解
  12. mysql主从复制及读写分离
  13. 光速掌握-CSS预处理器SASS从入门到高级
  14. 数据库方面是知识和实战
  15. HTML指南针源码zip,指南针指标公式源码
  16. 【20CSPS提高组】贪吃蛇
  17. 基于opencv python 的网线线序识别(一)
  18. 「游戏引擎 浅入浅出」项目介绍
  19. 老鹰:我要抓走倒数第K个小鸡
  20. python 爬取NBA中国官网球员数据

热门文章

  1. UE4性能观察的基础
  2. 无需任何配置,初学者必会的一键获取微信小程序源代码的快捷方法与工具使用
  3. web服务器常见配置搭建详解(超详细)
  4. 【尊享版】如何从零到一掌控习惯?
  5. windows上注册控件/反注册控件
  6. Spring Boot+MyBatis Plus+JWT 问卷系统!开源!
  7. 不想当空军的开发者,不是好程序员
  8. Linux学习笔记RHEL 7(十)--使用Vsftpd服务传输文件和使用Samba或NFS实现文件共享
  9. 教你一招避开网盘限速(百度网盘下载助手)
  10. 单火开关研发经验总结