Python基础——面向对象、类和对象的关系

类和对象的定义

# day 3
"""
类与对象
类是抽象的:例如老师、学生、人·
对象是具体的:例如茄子、我的班主任、2路公交车
对象有状态和行为
例如:
茄子:活着
茄子说话:wdnmd、我柜子动了。等等
"""

关于如何在代码中定义类和对象

私有变量
公有变量
魔术方法
构造方法等

# # 类的定义
# 类名满足大驼峰规则,例如:MyName、QieZi
# class 类名:
#     pass
# 代表一个空类
#
#
# 格式二:
# class 类名:
#     成员
#
# 对象的创建
# 格式
# 变量名 = 类名()
# Note:创建对象不限制数量

# demo
# class QieZi:
#     pass
#
#
# wd_nmd = QieZi()


# 类成员:
# 1.成员变量
# 2.成员方法

# self只出现在成员方法中,指代该方法的对象,类似于c++中的this指针
# demo2

class QieZi:
    def __init__(self):
        """构造方法,可以自定义参数,类似于c++的构造函数"""
        self.type = "茄子少将"  # 共有属性,类似public
        self.name = None  # 不给值
        self.__dnmd = None  # 私有变量的定义格式
    # 成员方法
    def get_dnmd(self):
        """私有变量的封装 :访问器"""
        return __dnmd

    def set_dnmd(self, member):
        """私有变量的封装 :修改器"""
        self.__dnmd = member
        
    def speak(self):
        print("wdnmd!")

    def talk(self, i):
        j = 0
        while j < i:
            print("我叼你妈的!")
            j += 1

    def introduce(self):
        """ 想要在方法中调用类型的公共变量得加一个self"""
        print("我是%s,我叫%s,我喜欢说”%s“" %(self.type, self.name, self.words))

    def __WDNMD(self):
        """私有方法的定义"""
        return" "

    def __str__(self):  # 魔术方法,在打印输出对象到屏幕时运行
        return "叼你妈的,还想看老子内存"


qiezi = QieZi()
qiezi.name = "刘培茄"
qiezi.words = "我叼你妈的"  # 私有属性,类似于private
qiezi.speak()
print("_"*20)
qiezi.talk(5)
print("_"*20)
print(qiezi)  # 没有魔术方法的话,直接打印cat1的地址,每次运行,地址不停地变
print("_"*20)
qiezi.introduce()



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值