python的类


前言

提示:这里可以添加本文要记录的大概内容:

python的类可以提高我们所书写的代码的复用性,以及写代码的效率,可以将类比作成一个模具。


提示:以下是本篇文章正文内容,下面案例可供参考

一、类的定义和实例的创建

定义类的保留字是:class

class Dog:  #创建一个Dog类,类的名字是Dog
#创建完类之后添加属性和方法
      name = "旺财"   #添加属性
      age = 2   #添加属性*2
#在没有其他方法调用时直接调用构造方法
#构造参数可以是无参也可以是有参的:
#无参:
    def __init__(self):
        pass

    def spark(self):
        print("我叫{},我今年{}岁".format(self.name, self.age))


Dog().spark()

#有参:
    def __init__(self, n, a):
        self.name = n  # 对属性进行赋值
        self.age = a

    def spark(self):
        print("我叫{},我今年{}岁".format(self.name, self.age))



#有参实例化:

dog = Dog("旺财", 2)
dog.spark())
 
运行结果:
我叫旺财,我今年2

二、类的继承

1、类的单继承

# 单继承示例,重写父类函数
class student(people):   #继承
    grade = ""   #添加属性

    def __init__(self, n, a, w, g):
        people.__init__(self, n, a, w, )
        self.grade = g
        # 覆写父类方法
#定义方法
    def spark(self):
        print("我叫{},我来自{}年级".format(self.name, self.grade))

        # student类进行实例化

to = student('阿龙', 10, 20, 3)  # 继承的函数也要进行实例化,首先要创建对象才可以进行以下操作不创建会报错
to.spark()

2、类的多继承

#父类都是由以上类继承的
class tiancai(sparker,student):
    def __init__(self,n,t,a,g,w):
        sparker.__init__(self,n,t)
        student.__init__(self,n,a,g,w)
        print("{},主题:{},年龄:{}班级{}".format(self.name,self.topic,self.age,self.grade,self.werght))


q = tiancai("long","阿龙",20,12,60)

3、类的的私有方法和私有属性

私有变量:实例._类名__变量名
私有方法:实例._类名__方法名()

其实,Python并没有真正的私有化支持,但可用下划线得到伪私有。 尽量避免定义以下划线开头的变量!
(1)_xxx "单下划线 " 开始的成员变量叫做保护变量,意思是只有类实例和子类实例能访问到这些变量,
需通过类提供的接口进行访问;不能用’from module import *'导入
(2)__xxx 类中的私有变量/方法名 (Python的函数也是对象,所以成员方法称为成员变量也行得通。),
" 双下划线 " 开始的是私有成员,意思是只有类对象自己能访问,连子类对象也不能访问到这个数据。
(3)xxx 系统定义名字,前后均有一个“双下划线” 代表python里特殊方法专用的标识,如 init()代表类的构造函数。

总结

注意,要调用属性的时候一定要加上self.,忘了会出现未定义的错误
本次笔记是python的的类方法仅供参考
希望对你有益谢谢

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

阿龙的代码在报错

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

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

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

打赏作者

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

抵扣说明:

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

余额充值