面向对象编程

一、类的定义(相当于多个函数集合的定义)

例:定义一个矩形类,包含两个数据成员(属性参数):宽度和高度;

该类提供两种方法(功能函数):求面积和周长

class Rectangle:       #定义一个类,类名为Rectangle
    
    def __init__(self, width, height):          #定义初始化方法(函数),三个参数,至少有self一个参数(形参)
        self.width = width                    #定义参数变量属性(给实例属性赋值)
        self.height = height
        
        
    def getArea(self):                        #定义一个函数功能求面积
        S = self.width * self.height              #根据公式求面积值
        return S                                 #返回函数值
    
    def getPerimeter(self):                   #定义一个函数功能求周长
        C = (self.width + self.height)*2
        return C

二、创建类对象(相当于函数的调用)

rect = Rectangle(3,5)    
     #创建Rectangle的对象,(具体值即实参)rect,即将属性参数传递给实例属性,并将结果赋值给对象

print('此矩形的宽为:',rect.width)
print('此矩形的高为:',rect.height)
print('此矩形的面积为:',rect.getArea())
print('此矩形的周长为:',rect.getPerimeter())

三、 类的属性(变量)

1.实例属性:在方法内部通过‘self.属性变量名’定义和访问的变量(在外部通过‘对象名.变量名’访问)

2、类属性;在所有方法之外定义的属性(变量)

四、类的方法(函数)

1、定义:与类相关的函数

2、类型:实例方法,类方法,静态方法

3.实例方法:至少包含一个对象参数,在内部通过'self.方法()'调用,

在外部通过‘对象名.方法()’调用。

五、类的继承与重写

1、继承:子类继承父类的方法

2、重写:子类可以重写父类的方法(方法名称相同)

3、示例如下:

 

class Person:                            #定义一个父类Person
    def __init__(self,name,age,sex):
        self.name = name
        self.age = age
        self.sex = sex
        
    def working(self):
        print(self.name,'正在工作!')
        
    def show(self):
        print('姓名:{}\n年龄:{}\n性别:{}\n'.format(self.name,self.age,self.sex))
 
class Student(Person):                   #定义子类Student继承父类Person
    def __init__(self,name,age,sex,major):
        super().__init__(name,age,sex)   #继承父类(调用父类初始化方法),借用super()内置函数
        self.major = major
        
    def show(self):                     #重写父类方法
        Person.show(self)               #继承父类
        print('专业',self.major)        #添加额外行为
 
s = Student(name='张三',age='20',sex='男',major='通信学院智联网')    #给予子类创建对象
s.working()
s.show()

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值