A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 冯超 高级黑马   /  2013-1-29 16:30  /  1196 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

主要是思想,可能很多人像我一直学学学,好多东西没学完了,其实自己也是想早一点学到SSH,能做出一个比较好的项目。
面向对象:
最近火车票这个词很火,呵呵。(以前我们去买票,都是先到火车站,然后再在站台像服务员买票,最后服务员给你一张票。。。。)
      我把买火车票的这个功能封装成一个类。然后我new 一个火车票类,在调用火车票这个类中的买票方法,它最后返回一个票你。

class 火车票
{
     买票method() {}
}
则 火车票 票 = new 火车票().method();

4 个回复

倒序浏览
本帖最后由 舒远 于 2013-1-29 16:38 编辑

卖票的功能应该是窗口这个对象的。
火车票只是个普通对象(价格,车次,起始站,发车时间等属性)
还有一个票务中心这样的对象,负责产生整个铁路系统的票。
窗口具备卖票的方法:saleTicket(),窗口中所卖的票是由票务中心产生的。
回复 使用道具 举报
舒远 发表于 2013-1-29 16:37
卖票的功能应该是窗口这个对象的。
火车票只是个普通对象(价格,车次,起始站,发车时间等属性)
还有一个 ...

        赞同你的说法,至于为什么赞同,参考老张的思想:”谁拥有数据,谁就对外提供操作这些数据的方法”,这是面向对象的原理吧,记住这个原理大家就都是面向对象的高手 了,这是张孝详老师说的。
        分析:
        我们说卖票,那么谁拥有票?  不能说票拥有票吧?所以卖票的方法放在票的对象上很明显是错误的。
        
        又如,我们要打印火车票,这个方法应该谁拥有?
        分析:
        我们说打印火车,那么打印的是火车票的价格,车次、发车时间等信息。很明显火车票这个对象拥有这些数据,所以打印火车票的方法应该定义在“火车票”对象上。
         希望对大家有帮助!!!!!记住老张说的话,没错!!!
回复 使用道具 举报
冯超 来自手机 高级黑马 2013-1-30 13:27:40
板凳
戴振良 发表于 2013-1-29 18:05
赞同你的说法,至于为什么赞同,参考老张的思想:”谁拥有数据,谁就对外提供操作这些数据的方法 ...

记住是没有用,要深刻理解才对。
回复 使用道具 举报
冯超 发表于 2013-1-30 13:27
记住是没有用,要深刻理解才对。

记住怎么没用?那是你不去用吧,你没记住怎么去用?没去用怎么能深刻理解?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马