zoukankan      html  css  js  c++  java
  • 027. Python面向对象的__init__方法

    __init__魔术方法(构造方法)

    触发时机:实例化对象,初始化的时候触发
    功能:为对象添加成员
    参数:参数不固定,至少一个self参数
    返回值:无

    基本用法,至少含有一个参数

    复制代码
    class MyClass():
            def __init__(self):
                    self.name = "Chris"
    #实例化对象
    obj = MyClass()
    print(obj.name)
    复制代码

    执行

    [root@node10 python]# python3 test.py
    Chris

    多个参数的__init__ 构造方法

    复制代码
    class MyClass():
            def __init__(self,name):
                    self.name = name
    #实例化对象
    obj = MyClass("Ning")
    print(obj.name)
    obj = MyClass("Ning1")
    print(obj.name)
    复制代码

    执行

    [root@node10 python]# python3 test.py
    Ning
    Ning1

    综合实例

    复制代码
    class Plane():
            def __init__(self,name,funaction):
                    self.name = name
                    self.funaction = funaction
            def fly(self):
                    print(self.name + "会飞")
            def capitain(self):
                    print(self.name + "一般都会有一个驾驶员")
            def addoil(self):
                    print (self.name + "都需要加油")
            def plane_info(self):
                    print ("这种飞机是{},他的功能是{}".format(self.name,self.funaction))
    # __init__构造方法,传递参数时,就在实例化类的括号中填写
    obj = Plane("战斗机","打仗")
    obj.fly()
    obj.plane_info()
    
    obj1 = Plane("客机","载人")
    obj1.capitain()
    obj1.plane_info()
    
    obj2 = Plane("播种机","播种")
    obj2.addoil()
    obj2.plane_info()
    复制代码

    执行

    复制代码
    [root@node10 python]# python3 test.py
    战斗机会飞
    这种飞机是战斗机,他的功能是打仗
    客机一般都会有一个驾驶员
    这种飞机是客机,他的功能是载人
    播种机都需要加油
    这种飞机是播种机,他的功能是播种
    复制代码

    类可以是一个,但对象可以实例化出多个,每个对象彼此都是独立的

    学习记录,小白一枚
  • 相关阅读:
    MySQL学习笔记
    FileInputStream
    Java 多个if 和多个else if 的区别
    Flume 聚合
    Flume SinkProcessor
    Flume ChannelSelector (包括自定义flume拦截器)
    Flume 案例演示
    為政第二
    各种版本 WordCount
    學而第一
  • 原文地址:https://www.cnblogs.com/wangsirde0428/p/14322553.html
Copyright © 2011-2022 走看看