zoukankan      html  css  js  c++  java
  • Python- 面向对象

     

    # 面向对象
    # 有意义的面向对象的代码
    # 类 = 面向对象
    # 类、对象
    # 实例化
    # 类最基本的作用:封装
    class Student():
        name = ''
        age = 0
    
        def print_file(self):
            print('name:' + self.name )
            print('age:' + str(self.age) )
    
    student = Student()
    student.print_file()

    如果想正确引用类里面定义的变量,我们需要使用 self 关键字,类里面的函数是一定要加self,否则会报错。如果想在函数内部使用类定义的变量,是需要在函数里面用  self.变量名

    继承:

    父类

    class Human():
    
        sum = 0
        def __init__(self, name, age):
            self.name = name
            self.age = age
    
        def get_name(self):
            print(self.name)
    
    
        def do_homework(self):
            print('This is a parent Method')

    子类

    from c5 import Human

    class Student(Human):
    # sum = 0
    # def __init__(self, name, age):
    # self.name = name
    # self.age = age
    # self.__score = 0
    # self.__class__.sum += 1
    def __init__(self, school,name,age):
    self.school = school
    # Human.__init__(self, name, age) # 普通调用方法,需要补充完成方法的所有传参
    super(Student,self).__init__(name,age) # 子类调用父类方法优先使用super

    def do_homework(self):
    super(Student,self).do_homework()
    print('math homework')

    student1 = Student('北京路放牛小学', '小明',18)
    print(student1.sum)
    print(Student.sum)
    print(student1.name) # 可以继承变量
    print(student1.age)
    student1.get_name() # 可以继承方法
    student1.do_homework() # 子类于父类的方法重名,优先使用子类的方法
  • 相关阅读:

    JVM基础
    rpm、yum、解压缩安装
    Vim使用及账号用户管理
    linux常用操作
    属主权限和属组权限
    解决Hystrix Dashboard 一直是Loading ...的情况
    扫描不到了@FeignClient注解的调用接口
    springcloud与springboot版本问题
    【力扣】6和9组成的最大数字 题解
  • 原文地址:https://www.cnblogs.com/RzCong/p/8682940.html
Copyright © 2011-2022 走看看