Python高级学习第一课(寒假) 2022-1-3

相关概念

  • 类: 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
  • 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。
  • 数据成员:类变量或者实例变量, 用于处理类及其实例对象的相关的数据。
  • 方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖,也称为方法的重写。
  • 局部变量:定义在方法中的变量,只作用于当前实例的类。
  • 实例变量:在类的声明中,属性是用变量来表示的。这种变量就称为实例变量,是在类声明的内部但是在类的其他成员方法之外声明的。
  • 继承:即一个派生类继承基类的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。例如,有这样一个设计:一个Dog类型的对象派生自Animal类,这是模拟"是一个(is-a)"关系。
  • 实例化:创建一个类的实例,类的具体对象。
  • 方法:类中定义的函数。
  • 对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。
  • 多态:一种事物的多种形态,让具有不同功能的函数可以使用相同的函数名,这样就可以用一个函数名调用不同内容(功能)的函数。
  • 关于类属性和对象属性
    • 直接在class下输入的属性不叫对象属性,为类属性(用类名来调用)
    • 对象属性在init下,无对象属性时,默认输出类属性
    • 对象属性的优先级高于类属性,可动态的给对象添加对象属性,但为一次性(仅对当前对象生效,对类创建的其他对象无作用)
    • 删除对象中的某属性,再次调用会使用到同名的类属性(如果有的话)
      del per.name  
  • 注:如父类中方法名相同,则默认调用的是在括号前的父类

代码

# 定义一个有名字重量属性和驾驶方法的Car类,以让所有车类继承Car类
class Car(object):
  # 创建对象属性,名字和重量
  def __init__(self, name, weight):
      self.name = name
      self.weight = weight
  # 驾驶的方法
  def drive(self):
      print("drive " + self.name)

# 小汽车类继承Car类
class Private_car(Car):
    def __init__(self, name, weight):
        super(Private_car, self).__init__(name, weight)

# 客车类继承Car类
class Passenger_car(Car):
    def __init__(self, name, weight):
        super(Passenger_car, self).__init__(name, weight)

if __name__ == "__main__":
    # 对小汽车类和客车类进行实例化,输入相关属性
    private = Private_car("private car", "1.4t")
    passenger = Passenger_car("passenger car", "5t")

    # 分别打印小汽车和客车的属性并调用驾驶的方法
    print(private.name + " : " + private.weight)
    private.drive()
    print(passenger.name + " : " + passenger.weight)
    passenger.drive()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值