Python基础知识17(# # 面向对象 OOP )

# 面向过程

# 做一件事情,排出步骤, 第一干什么,第二部干什么,如果出现问题A,做什么处理,如果出现B做什么处理。

# 代表语言是 C

# 面向对象 OOP   方法论的问题

# 一种认识世界,分析世界的方法论。 讲万事万物抽象为各种对象。

# 类 class

# 类是抽象的概念,是万事万物的抽象。是一类食物的共同特征的集合

# 类 用计算机语言来描述,是属性和方法的集合

# python里 一切皆为对象

# 对象是数据和操作的封装

# 对象是独立的,但是,对象之间可以互相作用

# OOP 是最接近人类认知的编程范式

# 面向对象的3要素

# 1. 封装

        # 组装: 把数据和操作组装到一起

        # 对外只暴露一些接口,使用该对象的人不必关心内部实现

# 2. 继承

        # 为了复用。 继承来的东西就不用再写一遍了。

# 3. 多态

# class Person:   #类 必须使用 class 关键字

#         """

#         Person class

#         """

#         x = "abc"  # 类属性

#         def showme(self):   # self 是整个类的实例  . showme 是实例方法

#             return __name__         # 类名 首字母要大写

#                                     # 定义完成后,就生成一个类对象。

# print(Person)

# print(Person.__name__)

# print(Person.__doc__)

# print(Person.showme)  #<function Person.showme at 0x00000000024FE040>

# p = Person()  # 实例化一个 p对象

# # print(Person.showme(p))

# # print(Person.x)

# print(p.showme())  # showme() takes 1 positional argument but 2 were given。 解释器会自动的注入第一参数 self

# tom = Person() # 每次实例化后获得的实例,都是不同的实例

# print(p is tom)

# class Person:

#     def __init__(self):

#         print('init')

# tom = Person() # 分为2个阶段:

#                         # 1: 实例化

#                         # 2: 初始化

class Person:

    p = 10

    def __init__(self, name, age): #初始化方法。 其它语言习惯用构造方法:constructor

        print('init')

        self.name = name

        self.age = age

    def show_age(self):

        print(f"{self.name} 的年龄是 :{self.age}")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值