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() # 子类于父类的方法重名,优先使用子类的方法

 

posted @ 2018-03-31 16:51  RZ_Lee  阅读(210)  评论(0编辑  收藏  举报