python8之面向对象补充之使用场景

mac2022-06-30  21

一、概述

  之前我们学了面向对象知识,那我们在什么时候用呢?不可能什么时候都需要用面向对象吧,除非你是纯的面向对象语言,好的,我们下面就来谈谈

二、知识回顾

2.1 什么是面向对象?

  在学面向对象之前我们都是用:函数

  面向对象编程其实就是:类 + 对象

2.2 什么是类,什么是对象,它们之前又有什么关系?

 

class 类名: def 函数1(): pass def 函数2(): pass # obj是对象,是一个实例化的 obj = 类名() obj.函数1()

 

三、使用场景

3.1 提取公共功能

说明:我们把一些公共的功能,可以提取出来,并且在公共的功能中创建属于这个对象的属性,然后其他的方法就可以使用这个对象的属性了

我们举一个远程上传,执行命令的例子,例子代码如下:

def upload(): #连接服务器 #上传文件 #关闭 def cmd(): #连接服务器 #执行命令 #关闭

 从上面可以看出,连接服务器和关闭服务时属于公共的功能,我们用面向对象实现如下:

class SSH: def __init__(self,host,port,pwd,username): self.host = host .... def connection(self): #去创建连接 self.conn = #和服务器创建的连接对象() def close(self): #关闭 self.conn.关闭 def upload(self): self.conn #使用连接上传文件 def cmd(self): self.conn #使用连接执行命令 obj = SSH(...) obj = connection() obj.upload() obj.close()

 

3.2  根据一个模板去创建某些东西

说明:我们用面向对象,其实就是建立一个模板,比如说见一个person类,通过这个person类去实例化很多对象,子类继承它的时候,也可以重用一些属性和方法,这里就不多说了

 

3.3 多个函数传入共同参数

 

说明:当很多的函数需要有公共的参数时,可以吧参数提取出来,封装到对象中,便于以后方便使用

 

比如说,我们有很多的函数,需要用公共的参数,代码如下:

def f1(host,port,pwd,arg): pass def f2(host,port,pwd,arg,arg2): pass def f3(host,port,pwd,arg,arg2): pass

 上面三个函数都用到了host、port、pwd、arg这四个参数,那我们就可以封装到对象中,代码如下:

class f: def __init__(self,host,port,pwd,arg): self.host = host self.port = port self.pwd = pwd self.arg = arg def f2(self): self.host .... def f2(self,args2): self.host .... def f3(self,args2): self.host ....

 总结:

我们把一些公共的功能,可以提取出来,并且在公共的功能中创建属于这个对象的属性,然后其他的方法就可以使用这个对象的属性了根据一个模板去创建某些东西多个函数传入共同参数

 

转载于:https://www.cnblogs.com/xiangjun555/articles/6993149.html

最新回复(0)