IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python-面向对象-类与对象 -> 正文阅读

[Python知识库]Python-面向对象-类与对象

目录

类:

对象:

使用方式:

动态绑定:

全部代码:


类:

类是多个类似事物组成的群体的统称,能够帮助我们快速理解和判断事物的性质。

换句话说:类是一群具有相同特征或者行为的事物的一个统称,是抽象的,不能直接使用

  • 特征被称为属性
  • 行为被称为方法

类的名称(类名):由一个或者多个单词组成。

起名规范:单词首字母大写,其余小写。例如Student

类(class)的组成

  1. 类属性:直接写在类里的变量称为类属性,类中方法外的变量称为类属性,被该类的所有对象所共享
  2. 实例方法:在类之内定义的函数称为方法,在类之外定义的函数称为函数
  3. 静态方法:使用staticmethod修饰的,为静态方法,使用类名直接访问的方法
  4. 类方法:由classmethod进行修饰,是类方法,使用类名直接访问的方法
class Student: # 类的名称(类名):由一个或者多个单词组成。要求每个单词首字母大写,其余小写。
    native_pace = '类属性'  # 直接写在类里的变量,称为类属性
    def __init__(self, name, age):
        # self.name 称为实例属性,进行了一个赋值操作,将局部变量的name的值赋值给实例属性
        self.name = name      
        self.age = age

    # 实例方法
    def eat(self):
        print('这是实例方法')

    # 静态方法
    @staticmethod
    def method():
        print('这里使用了staticmethod进行修饰,所以是静态方法')

    # 类方法
    @classmethod
    def cm(cls):
        print('这里使用了classmethod进行修饰,所以是类方法')

对象:

在Python中一切皆是对象。

对象是由类(图纸/模板)创建出来的一个具体存在(飞机),可以直接使用。

由哪一个类创建出来的对象,就拥有在哪一个类中定义的属性和方法。

程序开发,应该有类,有对象。

类只有一个,而对象可以有很多个。


使用方式:

类属性、类方法、静态方法等的使用方式如下:

实例方法属性:对象名.实例方法属性名,例如 stu1.name

类属性:对象名.类属性名,例如 stu1.native_pace

类方法:类名.类方法名,例如 Student.cm()

静态方法:类名.静态方法名,例如 Student.method()

实例方法:

  • 调用方法1:对象名.方法名,例如 stu1.eat()
  • 调用方法2:类名.方法名(类的对象),例如 Student.eat(stu1)
# 1 创建Student类的对象
# 1.1 调用方式一
stu1 = Student('张三', 23)
stu1.eat()               # 对象名.方法名
print('学生姓名', stu1.name)
print('学生年龄', stu1.age)

# 1.2 调用方式二
Student.eat(stu1)  # 类名.方法名(类的对象)
print('学生姓名', stu1.name)
print('学生年龄', stu1.age)

# 2 类属性的使用方式
stu1 = Student('张三', 20)
stu2 = Student('李四', 30)
print('stu1.native_pace: ', stu1.native_pace)   # 访问类属性
print('stu2.native_pace: ', stu2.native_pace)

# 3 调用类方法
Student.cm()

# 4 调用静态方法
Student.method()

动态绑定:

Python是动态语言,在创建对象之后,可以动态绑定属性和方法。

动态绑定的属性和方法,只针对当前对象起作用。

# 5 动态绑定属性
stu2.gender = '女'   # 为stu2动态绑定性别属性,该属性只适用于当前绑定的这个对象
print('学生2:', stu2.name, '\n年龄', stu2.age, '\n性别', stu2.gender)

# 6 动态绑定方法
def show():
    print('定义在类之外的,称为函数')

stu1.show = show    # 为stu1动态绑定方法
stu1.show()

全部代码:

class Student:
    native_pace = '类属性'  # 直接写在类里的变量,称为类属性
    def __init__(self, name, age):  # 初始化方法
        # self.name 称为实例属性,进行了一个赋值操作,将局部变量的name的值赋值给实例属性
        self.name = name
        self.age = age

    # 实例方法
    def eat(self):
        print('这是实例方法')

    # 静态方法
    @staticmethod
    def method():
        print('这里使用了staticmethod进行修饰,所以是静态方法')

    # 类方法
    @classmethod
    def cm(cls):
        print('这里使用了classmethod进行修饰,所以是类方法')

# 1 创建Student类的对象
# 1.1 调用方式一
stu1 = Student('张三', 23)
stu1.eat()               # 对象名.方法名
print('学生姓名', stu1.name)
print('学生年龄', stu1.age)

# 1.2 调用方式二
Student.eat(stu1)  # 类名.方法名(类的对象)
print('学生姓名', stu1.name)
print('学生年龄', stu1.age)

# 2 类属性的使用方式
stu1 = Student('张三', 20)
stu2 = Student('李四', 30)
print('stu1.native_pace: ', stu1.native_pace)   # 访问类属性
print('stu2.native_pace: ', stu2.native_pace)

# 3 调用类方法
Student.cm()

# 4 调用静态方法
Student.method()

# 5 动态绑定属性
stu2.gender = '女'   # 为stu2动态绑定性别属性,该属性只适用于当前绑定的这个对象
print('学生2:', stu2.name, '\n年龄', stu2.age, '\n性别', stu2.gender)

# 6 动态绑定方法
def show():
    print('定义在类之外的,称为函数')

stu1.show = show    # 为stu1动态绑定方法
stu1.show()

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-04-06 16:14:01  更:2022-04-06 16:16:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 17:38:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码