我转换了这个“非面向对象”代码:
from Tkinter import *
root = Tk()
frame = Frame(root)
frame.pack()
bottomframe = Frame(root)
bottomframe.pack( side = BOTTOM )
redbutton = Button(frame, text="Red", fg="red")
redbutton.pack( side = LEFT)
bluebutton = Button(frame, text="Blue", fg="blue")
bluebutton.pack( side = LEFT )
root.mainloop()
对于此面向对象代码:
^{pr2}$这两个片段都会在屏幕上弹出一个简单的窗口。我的问题是,在这种情况下,面向对象编程(即使用类)的好处是什么?在
如果我想生成另外3个窗口(使用类),但是按钮颜色改变了,我是否必须修改蓝图(即类),或者在调用类实例时有什么方法可以做到?在
想一想,如果你有两个窗口都有红色按钮和蓝色按钮,会发生什么。你能理解为什么将它们封装在一个对象中会有帮助吗?在
“面向对象编程”不仅仅是使用
class
关键字编写过程性程序。如果有一个只调用一次的类,并且该类只有一个方法,即__init__()
,那么就不是OOP了。”在这种情况下,“没有任何好处,而且你并不是真正在做“面向对象编程”。在一般来说,OOP的好处是众所周知的,但在我看来,主要的好处是降低代码的复杂性。在
下面是一个类结构的用例
但这是一个简单而简短的代码。对于长而复杂的代码,它可以帮助您定义类变量并从类中的任何函数访问它们。此外,您还可以创建可重用的函数,并像您的示例中那样删除重复的行。在
最好多读一些关于OOP的知识,因为在这里讲所有方面并不简单。在
相关问题 更多 >
编程相关推荐