zoukankan      html  css  js  c++  java
  • 组合封装知识点

    组合

    定义:

    组合指的是,一个对象中的属性是另一个对象

    目的:

    和继承一样,都是为了减少代码的冗余度

    总结:
    继承:

    类与类的关系,一种是什么与什么的关系,子类和父类是从属关系

    组合:

    对象与对象的关心,一种什么有什么的关系,一个对象拥有另一个对象

    封装

    定义:

    封装指的是把一堆属性(特征与技能)封装到一个对象中。

    存数据的目的是为了取,对象可以“,”的方式获取属性

    比喻:

    对象就好比一个袋子,袋子里面装一堆属性

    目的:

    为了方便存取,可以通过 对象.属性的方式获取

    如何封装:

    特征:变量--->数据属性

    技能:函数--->方法属性

    在类内部,定义一堆属性(特征与技能),通过 对象.属性 = 属性值

    访问限制机制

    定义:

    在类内部定义,凡是以 __ 开头的数据属性与方法属性,都会被Python内部隐藏起来,让外部不能直接访问类内部以 __ 开头的属性

    比如: __name = ‘tank’

    ​ def __student(self):

    ​ pass

    目的:

    一堆隐私的属性与不能被外部轻易访问的属性,可以隐藏起来,不被外部调用

    优势:对重要数据获取的逻辑更加严谨,进而保证了数据的安全

    接口:

    隐私属性可以通过封装一个接口,在接口内做业务逻辑的处理,再把数据返回给调用者

    注意:在Python中,不UI强制限制苏醒的访问,类内部__ 开头的属性,只是做了一种变形

    若想直接访问,调用变形后的名字即可

    例:

    __ name , 变形之后就是 _ 类名 __name

    property

    定义:

    Python内置的装饰器,主要是给类内部的方法使用

    目的:

    使用他的目的就是将类内部的方法(def 方法名())变成了(def 方法)

    在对象调用某一个方法时,将 对象.方法()变成对象。(看起来就像一个普通的数据)

    如何使用:
    @property
    
    def 方法():
    

    多态

    定义:

    多态指的是同一种事物的多种形态

    目的:

    多态也称之为多态性,在程序中继承就是多态的表现形式;

    多态的目的是为了让多种不同类型的对象,在使用相同功能的情况下,调用同一个名字的方法名。

    父类:定义一套统一的标准

    子类:遵循父类统一的标准

    多态的最终目的:同一子类编写的规范,为了来让使用者更方便的调用下昂通功能的方法

    如何实现:

    继承

    注意:在Python中,不会强制要求子类必须遵循父类的一套标准,所以出现了抽象类

    抽象类:

    定义:

    abc模块 abstract_class

    目的:

    强制子类必须遵循父类的一套标准

    如何使用:

    import abc

    鸭子类型

    定义:

    在不知道当前类是什么的情况下,但是你长的像鸭子,那么你就是鸭子类型

    在Python中,不推荐使用抽象类限制子类的定义,但是推荐,类都遵守鸭子类型

    继承:耦合性太高,程序可扩展性差

    鸭子类型:耦合程度低,程序的可扩展性强

  • 相关阅读:
    MongoDB ‘conn’Mongo 对象远程代码执行漏洞
    Linux Kernel 本地拒绝服务漏洞
    Linux Kernel ‘skbuff.c’本地拒绝服务漏洞
    WordPress Citizen Space插件跨站请求伪造漏洞
    OpenSSH远程拒绝服务漏洞
    Bug之王花落谁家:四大最危险编程语言,PHP竟然不是bug最多的语言!
    《出Bug表》假如诸葛亮是程序员!写Bug测Bug,不宜异同!
    关于程序员的段子,有没有get到你的点?单身的程序员才是完整的程序员!
    关于程序员的段子,有没有get到你的点?单身的程序员才是完整的程序员!
    socket 通信 入门3 android 客户端 C# 服务端
  • 原文地址:https://www.cnblogs.com/justztz/p/11659887.html
Copyright © 2011-2022 走看看