关于面向对象的学习
本人参加过NOIP
自认为对面向过程的编程的编程还比较熟悉
但现在进入大学阶段
做过几个project
发现自己的面向对象的编程理解和应用不是很好
写出来的代码有很多注释队友还是看不懂
而且写出的程序修改起来很麻烦
感觉自己面向对象的编程能力很弱
希望大家给点意见
我现在应该怎么学习面向对象编程的思想和方法
或者应该看什么书
才能提高自己面向对象编程的能力
[解决办法]
在运用面向对象语言编程的时候,很多码友都会感觉设计能力不足。其实面向对象所要求的抽象能力不是与生俱来的,是大量经验的累积。抽象数据类型(ADT),书上解释为“一个数学模型和在这个模型之上的操作的封装”或者是“数据以及数据操作的封装”。我个人认为“抽象”两个字,讲的是用数据和数据的操作,对一种事物在一个特定环境下的特点的总结。也就是在一个具体问题中,我们知不知道此问题应该涉及几个类,知不知道每个类中都应该有些什么数据,知不知道数据上都需要些什么操作。
例1、维持一个停车场的正常运营
例2、举行一个汽车展览会,给每款汽车投票打分
两个问题都有汽车,楼主能大致设计一下,这两个问题都要抽象出哪些类吗?
我这里没有答案,只是随便想了个例子,希望能对你有所帮助。