一. 面向对象设计把握的一个重要经验:
谁拥有数据, 谁就对外提供操作这些数据的方法.
二. 面向对象的几个典型案例
1. 人在黑板上画圆
2. 列车司机紧急刹车
3. 售货员统计收获小票的金额
三. 面向对象设计题
1. 球从一根绳子的一端移动到另一端
2. 两块石头磨成一把石刀, 石刀可以砍树, 砍成木材, 木材做成椅子...
分类:
编程语言 时间:
2014-11-02 21:03:09
阅读次数:
177
1.封装/隐藏(encapsulation)
*隐藏对象的内部的复杂性,只对外公开简单的接口。便于外界的调用,从而提高系统的可扩展性,可维护性。
2.我们程序设计要追求“高内聚,低耦合”。
*高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;
*低耦合:仅暴露少量的方法给外部使用。...
分类:
编程语言 时间:
2014-11-01 11:57:44
阅读次数:
249
定义规范的目的是为了使项目的代码样式统一,使程序有良好的可读性。包的命名 (全部小写,由域名定义)Java包的名字都是由小写单词组成。但是由于Java面向对象编程的特性,每一名Java程序员都 可以编写属于自己的Java包,为了保障每个Java包命名的唯一性,在最新的Java编程规范中,要求程序员在...
分类:
编程语言 时间:
2014-10-30 15:12:04
阅读次数:
212
1.函数的重载
2.构造函数的作用
(构造函数可以重载)
1、函数名必须和类名相同
2、没有返回值
3、使用 New 来调用构造函数
4、如果类中没有构造函数,编译器会自动帮忙加载一个参数为空、方法体为空的构造函数
5、如果类中已经存在构造函数,编译器就不会帮忙生成构造函数了。...
分类:
编程语言 时间:
2014-10-28 21:47:18
阅读次数:
207
面向对象(一)
什么是面向对象
1.面向对象是一种编程方法
2.面向对象是一种思维方式
3.面向对象不是一种编程语言
应该如何学习面向对象
1.掌握一门面向对象语言的语法
2.掌握面向对象的思维方式
3.熟悉面向对象设计原则
4.掌握面向对象设计模式
什么是面向对象思维方法?
1.首先确定谁来做,其次确定怎么做;
2.首先考虑整体,其次考虑局部;
3.首先考虑抽象,其次考...
分类:
编程语言 时间:
2014-10-28 20:03:34
阅读次数:
215
今天,我们来说说java面向对象最核心的东西,多态。通过多态可以使我们的程序可复用性达到极致,这就是我们为什么要学多态的原因。“多态”(Polymorphic)也叫“动态绑定”(Dynamic Binding)同时也叫“迟绑定”(Late Binding)。动态绑定是指“在执行期间(而非编译期间)判...
分类:
编程语言 时间:
2014-10-19 18:22:58
阅读次数:
208
前两节,认识和学习了泛型的限定以及通配符,初学者可能需要一些时间去体会到泛型程序设计的好处和力量,特别是想成为库程序员的同学就需要下去体会通配符的运用了,应用程序员则需要掌握怎么使用泛型,这里针对泛型的使用中的约束和局限性做一个介绍性的讲解。...
分类:
编程语言 时间:
2014-10-15 12:00:50
阅读次数:
249
Java虚拟机是不存在泛型类型对象的,所有的对象都属于普通类,甚至在泛型实现的早起版本中,可以将使用泛型的程序编译为在1.0虚拟机上能够运行的class文件,这个向后兼容性后期被抛弃了,所以后来如果用Sun公司的编译器编译的泛型代码,是不能运行在Java5.0之前的虚拟机的,这样就导致了一些实际生产的问题,如一些遗留代码如何跟新的系统进行衔接,要弄明白这个问题,需要先了解一下虚拟机是怎么执行泛型代码的。
总结:
1.记住一点,虚拟机中没有泛型,只有普通的类。
2.所有泛型的类型参数都用它...
分类:
编程语言 时间:
2014-10-14 12:37:18
阅读次数:
214
1.泛型参数的限定,使用extends关键字,限定多个类型时用"&"隔开。如:
2.泛型参数限定中,如果限定的类型是class而不是interface,则class必须放在限定类表中的第一个,且最多只能存在一个class。如:
3.通配符只能用在泛型类的泛型参数中,不能单独使用。如Couple、Couple<? exte...
分类:
编程语言 时间:
2014-10-13 13:04:09
阅读次数:
205