Python__32--对象

简介: 对象

1 什么是对象?

对象(Object)是一个应用系统中的用来描述客观事物的实体,是有特定属性和行为(方法)的基本运行单位。是类的一个特殊状态下的实例。对象可以是一个实体、一个名词、一个可以想象为有自己标识的任何东西,可以概括来说:万物皆对象。

2 面向对象的三大特征

封装、继承、多态

2.1 封装:

封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

提高程序的安全性在方法内部对属性进行操作,在类对象的外部调用方法。无需关心方法内部的具体实现细节,从而隔离了复杂度。

2.1.1 君子协议

伪私有属性,君子协议不希望在类对象外部被访问,却可以强制访问

2.1.2 伪装

使用__双下划线伪装

def__init__(self,name,age):
sef.name=nameself.__age=age


2.1.3 强制访问

通过print(dir(实例对象名))查找属性名,后强制访问

2.2 继承:

面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。 通过继承创建的新类称为“子类”或“派生类”。 被继承的类称为“基类”、“父类”或“超类”。

目的:提高代码的复用性。

2.2.1 继承实例

classPerson (object):
def__init__(self,name,age):
self.name=nameself.age=ageclassStudent(Person):
def__init__(self,name,age,no):
super().__init__(name.age):
self.stu_no=stu_noclassStudent(Person):
def__init__(self,name,age,teacheryear):
super().__init__(name.age):
self.teacheryear=teacheryearstu.info()
teacher.info()



2.2.2 方法重写

对父类的方法不满意,可在子类中对方法体重写。

definfo(self):           #重写super().info()          #调用父类方法print('学号:{0}').format(self.score)


2.2.3 object类

object类是所有类的父类,因此所有类都有object类的属性和方法。

如内置函数dir()可以查看指定对象所有属性

如object有一个__str__()方法,用于返回一个对于“对象的描述”,对应于内置函数str()经常用于print()方法,帮我们查看对象的信息,所以我们经常会对_str_()进行重写

网络异常,图片无法展示
|

2.3 多态:

多态指同一个实体同时具有多种形式。同字面意思,及一个对象在不同的情况下会有不同的体现。

提高程序的可扩展性和可维护性,动态语言只关心类中有没有这个方法,有就可以执行,不关心父子关系

相关文章
|
8天前
|
网络协议 Python
Python网络编程基础(Socket编程)创建UDP socket对象
【4月更文挑战第8天】在Python中创建UDP服务器涉及使用`socket`模块创建socket对象,如`udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)`,然后绑定到特定IP地址和端口,如`udp_socket.bind(('localhost', 12345))`。服务器通过`recvfrom`在无限循环中监听和接收数据报。这只是基础,实际应用还需处理接收、解析、响应及错误处理等。接下来可学习如何利用socket对象进行数据交互以构建完整服务器。
|
8天前
|
存储 安全 UED
一文让你读懂Python中的Response对象
一文让你读懂Python中的Response对象
52 0
|
8天前
|
SQL API Python
Python DB API下规范下cursor对象常用接口
Python DB API下规范下cursor对象常用接口。
22 4
|
3天前
|
Java 程序员 C语言
2024年Python最新【Python学习教程】Python类和对象_python中类和对象的讲解,Python最新面试题
2024年Python最新【Python学习教程】Python类和对象_python中类和对象的讲解,Python最新面试题
2024年Python最新【Python学习教程】Python类和对象_python中类和对象的讲解,Python最新面试题
|
3天前
|
搜索推荐 开发工具 Python
2024年最新【Python 基础教程】对时间日期对象的侃侃而谈,面试必考题
2024年最新【Python 基础教程】对时间日期对象的侃侃而谈,面试必考题
2024年最新【Python 基础教程】对时间日期对象的侃侃而谈,面试必考题
|
8天前
|
存储 Java 数据安全/隐私保护
Python----类对象和实例对象
Python----类对象和实例对象
9 2
|
8天前
|
存储 安全 Java
Python中的引用和赋值机制允许变量引用内存中的对象,并通过引用计数来管理对象的生命周期
【5月更文挑战第14天】Python中的变量是对象引用,不存储数据,而是在内存中创建对象。赋值操作创建新变量并使其指向已有对象。引用计数用于管理对象生命周期,引用数为0时对象被回收。理解这些机制对编写高效Python代码很重要。
26 6
|
8天前
|
C++ Python
Python中的类与对象
Python中的类与对象
8 1
|
8天前
|
缓存 Java Python
Python 弱引用全解析:深入探讨对象引用机制!
Python 弱引用全解析:深入探讨对象引用机制!
23 3
|
8天前
|
运维 Shell Sentinel
第八章 Python可迭代对象、迭代器和生成器
第八章 Python可迭代对象、迭代器和生成器