类和对象的一些介绍

面向对象编程,,如何来设计类?

首先要考虑对象需要使用到哪些属性,对象需要实现什么样的功能。

class Student(object)

         '''   保存学员信息的类

              args:  -- name:保存学员姓名     

                            -- age:保存学员年龄

          '''

         # 类属性:类可以使用和修改,对象能够使用,但它是对象不能修改的属性

         school_name = '爱学'

         # 初始化函数,用来初始化对象属性值的,当创建对象的时候该函数会自动被调用,self就是创建的那个对象

         def __init__(self,name,age):

                self.name = name

                self.age = age

         # 凡是函数带有self参数且函数没有被任何的装饰器主装饰,该函数默认为对象函数

         # 对象函数:只能由对象调用,类若想要调用,需要传入一个对象参数

          def show_name(self):

                 print(self.name,self.age)

          # @staticmethod 装饰器  作用:不改变原有函数代码的情况下,可以为函数添加一些额外功能

          #  静态函数,可以使用类和对象直接调用执行

          @staticmethod

          def print_line(count):

                 print('*'*count)

          @classmethod

          def print_double_line(cls):

                 # cls 指的就是当前的类

                  print(cls)

                  print('='*50)
     
 

people = Student(‘张三’,22)

print(people)

       

__main__指在本文件中,Student 说明类,object at xxx  说明对象在哪个地址

people.show_name()       # 类调用对象函数,必须传入一个对象参数

       

Student.print_line(100)

people.print_line(50)

     

Student.print_double_line()

people.print_double_line()

 

print(Student.school_name)

print(people.school_name)

 #   people.XXX = XXX   :对象添加属性,或者改变属性,但无法改变其类属性

people.school_name = '不爱学'    

print(Student.school_name)

print(people.school_name)

# 创建一个新对象,验证上面只是对象属性改变,其类属性没有,在类改变类属性时,对象随之改变

man = Student('李四',22)              

print(man.school_name)

Student.school_name = '太爱学’

print(man.school_name)

猜你喜欢

转载自blog.csdn.net/qq180653/article/details/81188785
今日推荐