Windows应用程序设计作业(Python版实现)
作业2-面向对象编程
PS:涉及个人信息,所以这一部分只分享下问题与反思噢~
问题与反思:
- https://www.runoob.com/python/python-object.html
python继承、多态、抽象、接口、事件等基本语法 - 方法的重用,通过实例化子类,输出结果进一步理解执行过程
- python封装的思想,面向对象的编程,对用户更加透明:通过接口统一进行访问,而对底层实现并不关心
- 在面向对象编程中,进一步增加了程序的可读性,模块化编程的思想更加明晰,提高函数的复用性。
- python3中的继承有多继承、单继承。两点原则:
(1)子类在调用某个方法或变量的时候,首先在自己内部查找,如果没有找到,则开始根据继承机制在父类里查找。
(2)根据父类定义中的顺序,以深度优先的方式逐一查找父类!
见:https://www.cnblogs.com/ostrich-sunshine/p/9415698.html
以下是不完整代码:
import time
class XXXXX: # 定义父类
__securityinfo = 0 # 私有变量
public_visit_info = 0 # 公开变量
def visit(self):
self.__securityinfo += 1
self.public_visit_info += 1
print("父进程中私有变量的值:", self.__securityinfo)
def __init__(self, name, location, offWebsite, oph):
self.name = name
self.location = location
self.offWebsite = offWebsite
self.oph = oph
def visitWelcom(self):
print ("欢迎来到:", self.name)
print ("办公位置:", self.location)
print ("官方网址:", self.offWebsite)
print ("办公电话:", self.oph)
def function(self):
pass
class Child1(XXXXX):
# 继承XXXXX类
def function(self):
print("child1" + self.name)
class Child2(XXXXX):
# 继承XXXXX类
def grassrootsOrganizations(self):
print("Grassroots organizations!")
# 方法重写
def visitWelcom(self):
print ("欢迎来到:", self.name)
print ("办公单位:", self.location)
print ("官方网址:", self.offWebsite)
def function(self):
print("child2" + self.name)
class Child3(Child1):
# 方法重写
def visitWelcom(self):
print ("欢迎来到:", self.name)
print ("办公单位:", self.location)
print ("官方网址:", self.offWebsite)
class Child4(Child3):
cnt = 0
def __init__(self, name, sid, specialty):
self.name = name
self.sid = sid
self.specialty = specialty
Child4.cnt += 1
def displayCount(self):
print ("Child4.cnt " % Child4.cnt)
def displayinfo(self):
print ("姓名 : ", self.name, ", ID : ", self.sid, ")
# 可以定义接口统一来使用
def func_display(obj):
obj.function()
def visit_display(obj):
obj.visit()
if __name__ == '__main__':
# 实例化子类,并进行调用
pass
那写看似毫无波澜的日复一日,会在某一天 让你突然发现努力的意义。
无悔昨天 & 感谢今天 & 喜欢明天~
一以贯之的努力,不得懈怠的人生。每天的微小积累,会决定最终的结果,这 就是答案!