Python 3 接口与归一化设计

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 3 接口与归一化设计相关的知识,希望对你有一定的参考价值。

一、接口与归一化设计:

1.归一化让使用者无需关心对象的类是什么,只需要知道这些对象都具备某些功能就可以了,这极大地降低了使用者的使用难度。

2.归一化使得高层的外部使用者可以不加区分的处理所有接口兼容的对象集合。

二、继承的两种用途:

1、继承基类的方法,并且做出自己的改变或者拓展(代码重用):实践中,继承的这种用途意义并不是很大,甚至常常是有害的,因为他使得子类与基类出现强耦合。

2、声明某个子类兼容与某基类,定义一个接口类(模仿java的interface),接口类中定义了一些接口名(就是函数名)且功能,子类继承接口类,并未实现接口类,并且实现接口类,并且实现接口类中的功能。

class Interface:#定义接口Interface类来模仿接口的概念,python中压根就没有interface关键字来定义一个接口。
    def read(self): #定接口函数read
        pass

    def write(self): #定义接口函数write
        pass


class Txt(Interface): #文本,具体实现read和write
    def read(self):
        print(文本数据的读取方法)

    def write(self):
        print(文本数据的写方法)

class Sata(Interface): #磁盘,具体实现read和write
    def du(self):
        print(硬盘数据的读取方法)

    def write(self):
        print(硬盘数据的写方法)

class Process(Interface):
    def read(self):
        print(进程数据的读取方法)

    def xie(self):
        print(进程数据的写方法)



t=Txt()
s=Sata()
p=Process()


t.read()
s.read()
p.read()


import abc
class Interface(metaclass=abc.ABCMeta):#定义接口Interface类来模仿接口的概念,python中压根就没有interface关键字来定义一个接口。
all_type=file
@abc.abstractmethod
def read(self): #定接口函数read
pass

@abc.abstractmethod
def write(self): #定义接口函数write
pass


class Txt(Interface): #文本,具体实现read和write
def read(self):
pass

def write(self):
pass
t=Txt()

print(t.all_type)

以上是关于Python 3 接口与归一化设计的主要内容,如果未能解决你的问题,请参考以下文章

python基础--接口与归一化设计封装异常网络编程

python接口与归一化设计

python 接口与归一化设计+抽象类

Python基础-接口与归一化设计抽象类继承顺序子类调用父类,多态与多态性

Python3.7之抽象类与归一化

接口与归一化设计