第19天:面向对象编程进阶

📅 2026/7/6 21:24:22 👁️ 阅读次数 📝 编程学习
第19天:面向对象编程进阶

Python学习100天(从入门到精通系列文章)


文章目录

  • Python学习100天(从入门到精通系列文章)
  • 前言
  • 一、可见性和属性装饰器
    • 1.1 什么是可见性
    • 1.2 Python 中的可见性实现
  • 二、动态属性
    • 2.1 动态语言的特性
    • 2.2 动态添加属性
    • 2.3 使用 __slots__ 限制动态属性
  • 三、静态方法和类方法
    • 3.1 对象方法 vs 静态方法 vs 类方法
    • 3.2 实战示例:三角形类
    • 3.4 使用 @property 装饰器
  • 四、继承和多态
    • 4.1 继承的基本概念
    • 4.2 继承实战示例
    • 4.3 多态
  • 总结

前言

在前一篇文章中,我们初步了解了面向对象编程的基本概念,包括类和对象的定义、属性和方法的封装。今天,我们将深入探讨面向对象编程的进阶知识,包括可见性、动态属性、静态方法、类方法以及继承与多态等核心概念。掌握这些内容,将帮助你写出更加优雅和可复用的代码。


一、可见性和属性装饰器

1.1 什么是可见性

在很多面向对象编程语言中,对象的属性通常会被设置为私有(private)或受保护(protected)的成员,简单来说就是不允许直接访问这些属性;对象的方法通常都是公开的(public),因为公开的方法是对象能够接受的消息,也是对象暴露给外界的调用接口,这就是所谓的访问可见性。

1.2 Python 中的可见性实现

在 Python 中,可以通过给对象属性名添加前缀下划线的方式来说明属性的访问可见性:

  • __name表示一个私有属性
  • _name表示一个受保护属性

示例代码:

classStudent