
Thinking in Java
文章平均质量分 62
srh08
这个作者很懒,什么都没留下…
展开
-
class的访问权限+单例模式
class只有两种访问权限(内部类除外):package access和public。如果不想其他任何人对该类拥有访问权限,可以把所有构造方法指定为private,阻止其创建该类的对象。但有一个例外,就是可以在该类的static成员内部创建对象。class Soup1{ private Soup1() {} public static Soup1 makeSoup(){ r原创 2012-05-11 23:19:55 · 427 阅读 · 0 评论 -
final关键字
final意思是This cannot be changed.1、对于基本类型,final使数值恒定不变;对于对象引用,final使引用恒定不变,但对象自身是可以被修改的。按照惯例,既是final又是static域将用大写字母表示并用下划线分割各个单词。private static final int VALUE_TWO=99;public static final int原创 2012-05-12 14:31:08 · 253 阅读 · 1 评论 -
Polymorphism
Polymorphism is also called dynamic binding or late binding or runtime binding.(多态也称作动态绑定、后期绑定或运行时绑定)。也可以说,通过动态绑定实现了多态。Java中除了static方法和final方法(private方法属于final方法)外,其他所有的方法都是后期绑定。注意,Constructors实际上是s原创 2012-05-12 16:48:18 · 293 阅读 · 0 评论 -
Composition的灵活性+状态模式
class Actor{ public void act(){}}class HappyActor extends Actor{ public void act(){ System.out.println("HappyActor"); }}class SadActor extends Actor{ public void act(){ System.out.println(原创 2012-05-14 20:41:57 · 249 阅读 · 0 评论 -
策略模式
import java.util.Arrays;class Processor{ public String name(){ return getClass().getSimpleName(); } Object process(Object input){ return input; }}class Upcase extends Processor{ String pr原创 2012-05-14 21:43:17 · 235 阅读 · 0 评论 -
Interface+工厂方法设计模式
package interfaces;interface Service { void method1(); void method2();}interface ServiceFactory { Service getService();}class Implementation1 implements Service { Implementation1() {}原创 2012-05-16 21:00:20 · 306 阅读 · 0 评论 -
内部类+迭代器模式
从外围类的方法中创建内部类的引用:OuterClassName.InnerClassNameWhen you create an inner class, an object of that inner class has a link to the enclosing object(外围对象)that made it , and so it can access the members原创 2012-05-16 21:01:17 · 257 阅读 · 0 评论 -
嵌套类
nested class嵌套类,即声明为static的内部类,嵌套类不能访问其外围类。嵌套类可以写在接口里面,如需要使得接口的不同实现共用一些代码时,把共用代码作为内部类写在接口中。嵌套类还有一个作用放置测试代码。// Putting test code in a nested class.// {main: TestBed$Tester}public class TestBe原创 2012-05-16 21:12:10 · 262 阅读 · 0 评论