Python学习笔记-17.09.18

面向对象编程

 多继承
 类中所有的__开头的方法都是内置的方法,来自于继承的父类,不能被外部调用
 定义类的语法
 class类名(父类….)
对象
 创建对象和调用函数一样
方法
 类方法:定义类方法要使用装饰器@classmethod,定义的第一个参数只能是类对象的引用,可以通过类或者实例直接调用

实例方法: 只能通过实例调用,实例方法第一个参数只能实例本身的引用
类方法: 定义类方法要使用装饰器@classmethod,定义的第一个参数只能只能是类对象的引用,可以通过类或者实例直接调用
静态方法: 定义静态方法要使用装饰器@staticmethod,没有默认必须参数,可以通过类或者实例直接调用

class person():
    #name ="zhangsan"    #字段,等同于java成员变量
    #name = None
    #__开头的方法和变量是受保护的,外部不可调用

    def __myshow(self):
        print("!!")
    def __init__(self,name=None):
        self.name = name
        self.__myshow()
    def show(self,s):  #this
        print(self.name,s)


p = person("ls")
p.show("sssss")
p.name="zs"
print(p.name)

创建实例

class Myclass:
    def foo(self):
        print(id(self))

    @classmethod
    def foo2(cls):
        print(id(cls))

    @staticmethod
    def foo3():
        print("foo3")

a = Myclass()   #创建实例
b = Myclass()
print(id(a))
a.foo()
b.foo()

print(id(Myclass))
Myclass.foo2()
a.foo2()

其中foo()是实例方法
foo2()是类方法
foo3()是静态方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值