Java4Android-面向对象的应用1
来源:互联网 发布:淘宝上1元秒杀是真的吗 编辑:程序博客网 时间:2024/04/30 08:27
被客户不断变化的需求所”折磨“
客户的第一次需求:
开发一个打印机的控制程序,能够实现开机,关机,打印3个功能, 简单;
客户的第二个需求:
增加一台新的打印机,修改一下程序吧,悲剧的是两台打印机牌子不一样,一个是HP,一个是canon;
所以需要修改,原来的class Printer改为class hpPrinter, 再增加一个新的class canonPrinter;
佳能打印机比惠普多了一个清理的功能,所以佳能类里面多了一个函数clean();
这里面存在大量重复的代码;
如果将来开发大的程序存在几万个类,修改重复代码的代价太高了,这样的编程思路的是不适合大型项目的开发的;
可能存在上百个类需要修改,如果一个一个去修改,很难判断是否全部修改了,所以需要面向对象的思维;
我们可以把惠普打印机和佳能打印机抽象出来,创造一个父类叫做class Printer{.... },把所有打印机的共有属性和方法集成到打印机这个类里面;
在子类代码里面继承父类,就可以减少大量的重复代码,在子类里面写自己独有的方法就好了;
此外,在子类里面,用super()去调用父类的函数,再用this调用自己的独有方法,就能极大减少重复代码了;
尝试在以后的编程过程中,通过继承来解决代码重复的问题;
无论是什么样的重复代码,都要尝试用各种各样的方法去解决重复代码,这样才会使自己的代码具有高可扩展性。
0 0
- Java4Android-面向对象的应用1
- Java4Android-面向对象基础1
- Java4Android学习三 - 面向对象
- Java4Android-面向对象基础2
- Java4Android-面向对象基础3
- Java4Android-面向对象基础4
- Java4Android-对象的转型
- Java4Android-接口的应用
- Java4Android之面向对象基础篇
- Java4Android学习五 - 面向对象三要素
- 面向对象的应用(1)
- Java4Android学习笔记_04面向对象(一)
- Java4Android笔记之Java中的面向对象基础(一)
- Java4Android笔记之Java中的面向对象基础(二)
- Java4Android笔记之Java中的面向对象基础(三)
- Java4Android笔记之Java中的面向对象基础(四)
- Java4Android类和对象的初始化详解
- Java4Android之一切都是对象(1)
- Android设计中的.9.png
- Android Studio上方便使用butterknife注解框架的偷懒插件Android Butterknife Zelezny
- 关于js的总结
- C++中WINAPI函数参数中的IN和OUT
- 使用Python递归对文件进行相关处理
- Java4Android-面向对象的应用1
- string转换成int的算法
- Android访问权限大全
- 算法竞赛入门经典高精度运算推荐题目
- log4j 日志详解
- Codeforces 560B Gerald is into Art(构造性算法)
- Json lib 抛出 NestableRuntimeException
- Java学习笔记---------如何使用Runnable接口来创建线程???
- java.lang.ClassNotFoundException: com.opensymphony.xwork2.util.ValueStack