第9章:类

1.自定义属性并赋值

class User():

      """ Class doc """

      def __init__ (self,first_name,last_name):

           """ Class initialiser """

           self.first_name = first_name

           self.last_name = last_name

           self.age = 20                    """ 新增自定义属性 """

          

      def describe_user (self):

           """ Function doc """

           print("The user's name is " + self.first_name + self.last_name + ",It is " + str(self.age) +" years old")

     

      def greet_user(self):

           """ Function doc """

           print("Hello ! " +self.first_name + self.last_name)

     

user1 = User('Zcl','Tom')

user1.describe_user()

user1.greet_user()

 

-----------------------------------------------------------------------------------------------------------------------------------

2.自定义属性并赋值,并且在创建实例时修改默认值

class User():

      """ Class doc """

      def __init__ (self,first_name,last_name):

           """ Class initialiser """

           self.first_name = first_name

           self.last_name = last_name

           self.age = 20                    """ 新增自定义属性 """

          

      def describe_user (self):

           """ Function doc """

           print("The user's name is " + self.first_name + self.last_name + ",It is " + str(self.age) +" years old")

     

      def greet_user(self):

           """ Function doc """

           print("Hello ! " +self.first_name + self.last_name)

     

user1 = User('Zcl','Tom')

user1.age = 23                      """修改自定义属性的默认值"""

user1.describe_user()

user1.greet_user()

 

-----------------------------------------------------------------------------------------------------------------------------------------

3.通过定义方法来修改属性的值

class User():

      """ Class doc """

      def __init__ (self,first_name,last_name):

           """ Class initialiser """

           self.first_name = first_name

           self.last_name = last_name

           self.age = 20

          

      def describe_user (self):

           """ Function doc """

           print("The user's name is " + self.first_name + self.last_name + ",It is " + str(self.age) +" years old")

     

      def greet_user(self):

           """ Function doc """

           print("Hello ! " +self.first_name + self.last_name)

     

      def update_age(self,age):                       """定义修改属性默认值的方法"""

           self.age = age

          

user1 = User('Zcl','Tom')

user1.update_age(24)                             """使用方法修改属性的默认值"""

user1.describe_user()

user1.greet_user()

 

--------------------------------------------------------------------------------------------------------------------------------------------

 

4.继承

class User():

      """ Class doc """

      def __init__ (self,first_name,last_name):

           """ Class initialiser """

           self.first_name = first_name

           self.last_name = last_name

           self.age = 20

          

      def describe_user (self):

           """ Function doc """

           print("The user's name is " + self.first_name + self.last_name + ",It is " + str(self.age) +" years old")

     

      def greet_user(self):

           """ Function doc """

           print("Hello ! " +self.first_name + self.last_name)

     

      def update_age(self,age):                      

           self.age = age

 

class Guest(User):                                         """继承父类的子类"""

      """ Class doc """

     

      def __init__ (self,first_name,last_name):

           """ Class initialiser """

           super().__init__(first_name,last_name)     

     

user1 = User('Zcl','Tom')

user1.update_age(24)

user1.describe_user()

user1.greet_user()

 

guest = Guest('zcl','Bob')                                   """子类的实现/实例"""

guest.update_age(25)

guest.describe_user()

guest.greet_user()

 

 

★ 可以给子类定义只属于自己的属性和方法

重写:

可以给子类定义和父类名称相同的方法,可以覆盖父类(类似于局部变量)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值