Python继承一个类和仅仅将类实例传递给另一个类之间的区别

2024-10-06 12:24:47 发布

您现在位置:Python中文网/ 问答频道 /正文

创建两个类(一个继承另一个)和将第一个类实例传递给另一个类init方法之间有什么区别?在

如下图所示, 方法一:

class ht(object):

    def __init__(self):
        pass

    def ch(self):
        self.filename="hellgmhjkl"


class tt():
    def __init__(self,ob1,ob3):
        self.ob1=ob1
        self.ob3=ob3
        self.b=5

    def display(self):
        print(ob1.filename)
        print(self.ob3.d)

class kk():
    def __init__(self):
        self.c=3

    def hel(self):
        self.d=self.c+5


if __name__ == '__main__':
    ob1=ht()
    ob1.ch()
    ob3=kk()
    ob3.hel()
    ob2=tt(ob1,ob3)
    ob2.display()

方法二:

^{pr2}$

方法1和方法2的区别是什么? 我的要求是我有几门课:配置.py, 日志.py, 分析.py, HTTPrequest.py, 请求.py, 攻击.py在

以上所有类都需要配置.py以及日志.py. 而且,分析.py需要来自请求.py以及HTTPRequest,py和attack.y需要请求.py. 在

有人能帮我如何继承多个或多个层次或usecomposition或只是传递类对象,以及如何?在


Tags: 方法pyselfinitdefdisplaychfilename
2条回答

当您想修改现有对象的行为时,您可以从类继承;因为继承将为您提供父对象的所有现有属性、方法和行为;您所要做的就是编写您自己的自定义项。新对象是父对象的派生对象。在

传递一个类意味着打算按原样使用该类的对象,也许会实例化它的一个新实例。在

请记住,类只是用于创建自定义对象(或类型)的工厂。在

如果只需要特定文件中的值,只需导入它们:

from request import a, b, c
from HTTPRequest import one, two, three

其工作但方法总是执行两次:

init.py

init.py

^{pr2}$

httpreq.py

anal.py

anal.py

tree_structure

tree

相关问题 更多 >