熟悉面向对象思想的同学,应该都知道其三大特征:封装,继承和多态。在任何支持面向对象思想的编程语言当中,都进行了体现。这一章当中通过完成判定结婚系统,介绍一下封装特征中的私有化等知识点。
需求分析:

涉及到的知识点:
- 面向对象类的封装,属性私有化封装
- 对象作为函数的参数进行传递,与对象类型的判断
- 异常的处理与抛出
逻辑分析:
原题为JAVA试题,gender为性别,题目中为boolean类型,在此题中,我将gender改动为字符串类型,可输入“男”或“女”,其他数据则提示异常,设计个函数marry用于判断是否能够结婚,排除所有不能够结婚的条件,最终依然继续执行,便是可以结婚。
功能实现代码:
class Person(object):
def __init__(self,name,age,gender,partner=None):
self.__name = name
self.__age = age
self.__gender = gender
self.__partner = partner
def setName(self,name):
self.__name = name
def getName(self):
return self.__name
def setAge(self,age):
if not isinstance(age,int):
raise ValueError('age must be type int')
if

该博客介绍了一个使用Python面向对象编程实现的结婚功能测试项目,讲解了封装特性中的属性私有化。通过创建Person类,实现结婚(marry)和离婚(divorce)方法,确保对象只能与符合条件的对象结婚,并在结婚后更新伴侣属性。文章强调了__双下划线私有化的重要性,并提供了代码示例和运行效果。

3468

被折叠的 条评论
为什么被折叠?



