python的类

python的类

首先了解一下python方法的定义

python中不需要使用分号“;”结尾,但是遵循严格的格式,代码格式的缩进必须保持正确

Python中的方法定义什么简单

def methodName():
	代码块
python中的类定义

类的定义的一般语法

class ClassName:
	[语法块]

以上就是类的定义的语法,十分简单,主要来看语法块中的具体内容

  1. 在类中语法块的第一部分应该声明一个构造函数,构造函数的语法:

    def __init__(self,para1,para2,...):
    	self.para1 = para1
    	self.para2 = para2
    	.....
    

    python将 "__ init __"方法作为构造函数,类似于java中的构造器,用于类的实例化,但是不同的是,python中将类中的属性声明在构造函数中,构造函数的参数 self 是必须带有的参数,不可省略,作用类似于java中的this,可以在实例化时初始化属性,也可以将参数赋值,如果队友某些属性只想让其在类中调用,并不想在类外被调用,可以声明为私有属性,声明方法是 在属性前加上两个下划线

    __paras
    
  2. 类中方法的声明

    类中方法的声明语法没有变化,但是在类中可以声明私有方法,静态方法和类方法

    私有方法:通过在方法名的前面增加两个下划线

    def __methodName():
    	pass
    

    静态方法:使用装饰器语法

    @staticmethod
    def methodName():
    	pass
    

    类方法:使用装饰器语法

    @classmethod
    def methodName(cls):
    	pass
    

    注意:类方法和静态方法前的装饰器不能有空格,而且类方法必须带有一个初始化参数,但是这个参数和构造函数的self参数不同,我们将这个参数形似的理解为是一个实例化对象,这样可以通过类直接调用类方法,而调用前不再需要实例化

面向对象的三大特征:

  1. 封装性
  2. 继承性
  3. 多态性
封装性:

封装性在代码中随处都可以体现,将特定的功能封装为一个方法供实例调用等

继承性:

顾名思义,即是子类可以继承来自父类的方法和属性,具体的语法也很简单,不需要写类似于java里的extends

class SubClass(BaseClass):
	[语法块]

以上就是python中继承的语法,SubClass就是子类,括号内的BaseClasss就是父类
继承之后可以通过SubClass isinstance BaseClass 来判断子类是否属于父类,在java中采用的instanceof

多态性:

多态就是多种形态的意思,说明子类继承来自父类的方法后可以换种形态表现,通俗的来讲就是重写方法,这就类似于java中的方法重写override

在实现多态时,即在方法重写时,要注意,必须保证重写的方法名和参数保持一致

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牧码文

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值