三大特性

class oldboy:
    def __init__(self,bk):
        self.arg = bk
        self.name = ‘alex‘

    def func_1(self):
        print(self.arg)
        print(self.name)
        return True

    def func_2(self):
        print(‘%s xx‘%self.arg)
        return True
obj = oldboy(‘妹子‘)
obj.func_1()

class oldgl:
    def __init__(self,bk):
        self.name = ‘alex‘
        self.faver = bk

obj= oldgl(‘bb‘)

class vov:
    def zou(self):
        print(‘vov走‘)
class yio(vov):
    def zou(self):
        print(‘yio走‘)
class yie(vov):
    def zou1(self):
        print(‘yie走‘)

class move(yio):

    def zou4(self):
        print(‘走‘)

class imove(yie):
    def zou2(self):
        print(‘一起走‘)

class people(imove,move):
    def __init__(self,name,gender,height,weight):
        self.Name = name
        self.Gender = gender
        self.Height = height
        self.Weight = weight
    def see(self):
        self.Weight -= 10
        print(self.Weight)
        return self.Weight

    def motion(self):
        self.Weight += 20
        return self.Weight

mike = people(‘麦克‘,‘男‘,155,122)
mike.see()
mike.motion()
mike.zou()
a = move()
mike.zou()

‘‘‘
三大特性 封装 继承 多态:

封装
    使用场景:当同一类型的方法具有相同参数时,直接封装到对象即可
    使用场景:把类当作模版,创建多个对象(对象内封装的数据可以)

继承
    派生类可以继承基类中所有功能
    派生类和基类同事存在,优先找派生类
    python类可以同时继承多个类(c#/java不可以)————优先级别,自己,左边,右边
    多继承规则—————  左1-2 → 右1-2 → 左3-4 → 右5-6  以此类推

多态
    多种形态
    python本身支持多态
    扩展:
        重载,函数名相同,参数个数不同——————python不支持
        重写,派生类中重新实现基类的中的方法

  ‘‘‘

  

时间: 2024-08-02 02:48:31

三大特性的相关文章

理解java三大特性之多态

---恢复内容开始--- 面向对象编程有三大特性:封装.继承.多态. 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据.对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法. 继承是为了重用父类代码.两个类若存在IS-A的关系就可以使用继承.,同时继承也为实现多态做了铺垫.那么什么是多态呢?多态的实现机制又是什么?请看我一一为你揭开: 所谓多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间

面向对象——三大特性,五大基本原则

三大特性是:封装.继承.多态 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏. 封装是面向对象的特征之一,是对象和类概念的主要特性. 简单的说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体.在一个对象内部,某些代码或某些数据可以是私有的,不能被外界访问.通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分. 继承是指可以让某个类型的对象获得另一个类型的对象的属

JAVA基础——面向对象三大特性:封装、继承、多态

JAVA面向对象三大特性详解 一.封装 1.概念: 将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问. 2.好处: 只能通过规定的方法访问数据.     隐藏类的实例细节,方便修改和实现. 3.封装的实现步骤 需要注意:对封装的属性不一定要通过get/set方法,其他方法也可以对封装的属性进行操作.当然最好使用get/set方法,比较标准. A.访问修饰符 从表格可以看出从上到下封装性越来越差. B.this关键字 1.this关键字代表当前

【转】java提高篇(二)-----理解java的三大特性之继承

[转]java提高篇(二)-----理解java的三大特性之继承 原文地址:http://www.cnblogs.com/chenssy/p/3354884.html 在<Think in java>中有这样一句话:复用代码是Java众多引人注目的功能之一.但要想成为极具革命性的语言,仅仅能够复制代码并对加以改变是不够的,它还必须能够做更多的事情.在这句话中最引人注目的是"复用代码",尽可能的复用代码使我们程序员一直在追求的,现在我来介绍一种复用代码的方式,也是java三大

面向对象的三大特性

面向对象的三大特性: 封装, 继承, 多态 封装 封装(Encapsulation)是面向对象方法的重要原则,就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节 继承: 子类拥有父类的属性和方法, 任何一个类都继承 Object (不管是java定义的还是自己定义的)::: Object.finalize()-->调用这个方法来释放资源: 多态(执行期间(执行期间-->你在控制台上写 java 类名 运行某个文件的时候叫执行期间)的动态绑定, 池绑定): 重载

【转】C#三大特性之 封装、继承、多态

C#三大特性之 封装.继承.多态 一.封装: 封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类).被封装的对象通常被称为抽象数据类型.  封装的意义: 封装的意义在于保护或者防止代码(数据)被我们无意中破坏.在面向对象程序设计中数据被看作是一个中心的元素并且和使用它的函数结合的很密切,从而保护它不被其它的函数意外的修改. 封装提供了一个有效的途径来保护数据不被意外的破坏.相比我们将数据(用域来实现)在程序中定义为公用的(public)我们将它们(fie

H5 24-CSS三大特性之继承性

24-CSS三大特性之继承性 div { color: red; text-decoration: none; font-size: 30px } 我是段落 我是段落 我是超链接 我是大标题 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>24-CSS三大特性之继承性</title> <style&

跟王老师学Java三大特性(一):案例 QuickHit:需求分析

项目案例:QuickHit:需求分析 主讲教师:王少华   QQ群号:483773664 学习目标 学会用面向对象思想来进行需求分析 一.需求 根据输入速率和正确率将玩家分为不同级别 级别越高,一次显示的字符数越多,玩家正确输入一次的得分也越高 规定时间内完成规定次数的输入,正确率达到规定要求,则升级 玩家最高级别为6级.初始级别一律为1级 用户错误输入一次,游戏结束 二.面向对象分析 (一) 发现类 玩家(Player)类 游戏(Game)类 级别(Level)类 (二)发现类的属性 1.玩家

面向对象三大特性五大原则

面向对象三大基本特性,五大基本原则 透切理解面向对象三大基本特性是理解面向对象五大基本原则的基础. 三大特性是:封装,继承,多态 所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏.封装是 面向对象的特征之一,是对象和类概念的主要特性. 简单的说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体.在一个对象内部,某些代码或某些数据可以是私有的,不能被外界访问.通过这种方 式,对象对内部数据提供了不同级别的保护,以防止程序

CSS三大特性(继承、优先级、层叠)之个人见解

首先声明一下CSS三大特性——继承.优先级和层叠.继承即子类元素继承父类的样式,比如font-size,font-weight等f开头的css样式以及text-align,text-indent等t开头的样式以及我们常用的color.简单的就不演示了,强调一下font-size这个东东(虽然也有继承,但是标签不同继承的效果也不一样),比如下面的代码: <!DOCTYPE html> <html lang="en"> <head> <meta c