面向对象 继承 接口

一  继承:

子类继承父类,通过在类后面加冒号来继承某个类 一旦形成继承关系后,

子类的对象就能够使用父类中的公共属性和方法函数

子类能够转换成父类,但父类不一定能够转成子类

只有当父类对象是由某个子类对象转换来的时候,才能再把父类对象转换回去,

从哪个子类来的,就只能再转回那个子类去

直接通过父类的构造函数构建的对象, 不能转换为子类对象

当子类中重写了跟父类同名同参数的方法之后,

通过哪个类的对象点出来的方法,对应就是那个类里面的方法内容

重写的方法,

如果在父类中加virtual 在子类中加override之后, 当从子类对象转换为父类类型的对象之后,通过父类对象调用的就是子类的方法

抽象类:

类名class前面加abstract 抽象类不能创建对象(实例),只能用作继承关系中的父类 其他用法和普通的类的继承用法相同

抽象方法:

只能写在抽象类当中 必须在子类当中通过override进行重写覆盖来实现方法内容 如果不实现,那么就默认这个子类也变成了一个抽象类, 必须再在其他地方去继承实现它才可以。

抽象属性,注意说的是属性,不是字段。 同抽象一样,需要去重写一下。

接口:

一个类只能继承一个父类,但一个类可以继承多个接口 接口不能创建自己的实例,接口中不能写字段、属性 接口里的方法不能有方法内容,必须要在子类里面去实现, 实现的时候要通过接口的名字点出方法来实现

二、多态

继承于父类的子类有自己特有的成员。

小知识点:

修饰符: 
protected:当前类及子类可以访问,注意子类创建的对象不能访问。

internal(类的默认访问权限):当前命名空间(类的默认命名空间)内可用。

时间: 2024-10-11 22:30:47

面向对象 继承 接口的相关文章

Python全栈之路系列----之-----面向对象4接口与抽象,多继承与多态)

接口类与抽像类 在python中,并没有接口类这种东西,即便不通过专门的模块定义接口,我们也应该有一些基本的概念 编程思想 归一化设计: 1.接口类 不实现具体的方法,并且可以多继承 2.抽象类 可以做一些基础实现,并且不推荐多继承 编程的几类原则: 开放封闭原则:对扩展示开放的,对修改是封闭的依赖倒置原则:高层模块不应该依赖低层模块,二者都应该依赖其抽象:抽象不应该应该依赖细节:细节应该依赖抽象.换言之,要针对接口编程,而不是针对实现编程接口隔离原则:使用多个专门的接口,而不使用单一的总接口.

12.面向对象(继承/super/接口/抽象类)

面向对象继承与派生继承继承顺序继承原理子类调用父类的方法(super)组合接口接口的概念:接口的概念解释和使用:python中的接口:抽象类 面向对象 继承与派生 继承 什么是继承?继承是一种创建新的类的方式 class A: pass class B(A): pass 在python中,新建的类可以继承自一个或者多个父类,原始类称为基类或者超类,新建的类称为派生类或者子类 python中类的继承分为,单继承和多继承. 查看继承的方法B.__bases__ 如果没有指定基类,python的类会默

JavaSE入门学习21:Java面向对象之接口(interface)(二)

一接口实现的多态 在上一篇博文:JavaSE入门学习20:Java面向对象之接口(interface)(一)中提到了接口的实现存在多态性,那么 这一篇主要就要分析接口实现的多态. 实例一 Test.java源文件代码: public class Test{ public static void main(String[] args){ //实现接口Singer Singer s1 = new Student("Amy"); s1.sing(); s1.sleep(); s1.study

Java面向对象㈡ -- 继承与多态

Java的继承是通过extends和implement来实现的,Java不支持多继承,但是Java支持多层继承以及多实现(接口).Java继承有一个关键字super是用来指向父类.Java继承衍生出覆盖的概念.覆盖被用来支持多态.实际开发中Java通常继承于抽象类,实现于接口.如果不希望一个类被继承,或者一个方法被覆盖,或者一个成员变量被改变,就可以用final修饰.这里只说明两个问题:1,重载和覆盖的区别重载和覆盖的区别:重载发生在同一个类之中,重载要求函数名相同,参数不同(参数个数||参数类

面向对象--继承(你必须知道的.NET读书笔记)

1.什么是继承继承,就是面向对象中类与类之间的一种关系继承的实现方式:实现继承 接口继承 2.继承的本质(1)继承是可以传递的,子类是对父类的扩展,必须继承父类的方法,同时可以添加新方法(2)子类可以调用父类方法和字段,而父类不能调用子类方法和字段(3)虚方法如何实现覆写操作,使得父类指针可以指向子类对象成员(4)之类不单只继承父类的公有成员,同时继承了父类的私有成员,只是在之类中不被访问(5)new 关键字在虚方法继承中的阻断作用 实例说明: 1 internal class Program

Java面向对象程序设计--接口和内部类

1.接口的定义: In the Java programming language, an interface is not a class but a set of requirements for classes that want to conform the interface. 说明: 1) Interface 不是class,虽然interface具有class的一些特点,例如能够继承,能够定义相同类型的变量,而且和C++的abstract class非常像,但Java 的inter

C#编程语言与面向对象——继承

现实生活中的事物都归属于一定的类别,比如,狮子是一种(IS_A)动物,为了在计算机中模拟这种关系,面向对象的语言引入了继承(inherit)特性. 构成继承关系的两个类中,Animal称为父类(parent class)或基类(base class),Lion称为子类(child class). 父类与子类之间拥有以下两个基本特性: 1.是一种(IS_A)关系:子类是父类的一种特例. 2.扩充(Extends)关系:子类拥有父类所没有的功能. class Animal { } class Lio

面向对象之接口与抽象性

一.接口(interface) 1.定义 接口就是规范,定义的是一组规则,体现了现实世界中“如果你是/要...则必须能...”的思想.继承是一个"是不是"的关系,而接口实现则是 "能不能"的关系 接口的本质是契约,标准,规范,就像我们的法律一样.制定好后大家都要遵守 一个类可以实现多个接口,可以得到多重继承的效果 2.接口的使用说明(JDK7及以前) ① Java中,接口(interface) 是与类(class)并列的结构 ② 如何定义一个接口:使用interfa

day24 继承 接口 多态

抽象类与接口类 接口类 继承有两种用途: 一:继承基类的方法,并且做出自己的改变或者扩展(代码重用) 二:声明某个子类兼容于某基类,定义一个接口类Interface,接口类中定义了一些接口名(就是函数名)且并未实现接口的功能,子类继承接口类,并且实现接口中的功能 class Alipay: ''' 支付宝支付 ''' def pay(self,money): print('支付宝支付了%s元'%money) class Applepay: ''' apple pay支付 ''' def pay(