![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
一起谈设计模式
会飞的幸运儿
这个作者很懒,什么都没留下…
展开
-
Iterator(1)-ArrayList
Iterator是设计模式中的一种,下面我们用一些jdk中的容器来诠释这种设计模式。代码如下:ArrayList.java:public class ArrayList { Object[] objects = new Object[10]; //加入初始的基础容器为10,不过没关系可以自动扩展 int index = 0; public void add(Object o)原创 2015-01-02 14:33:12 · 344 阅读 · 0 评论 -
Iterator(2)-LinkedList
今天聊的是ArrayList类的实现。Node类:public class Node { public Node(Object data, Node next) { super(); this.data = data; //数据域初始化 this.next = next; //指向下一个节点初始化 } public Object getData() {原创 2015-01-11 20:14:12 · 356 阅读 · 0 评论 -
Iterator(3)--Interface
如果想将上面两篇中的ArrayList和LinkedList两个容器中的方法进行一下统一的话就得用到Interface,下面来看一下代码:1.首先定义一个接口类:public interface Collection { void add(Object o); int size(); //Iterator iterator();}2.ArrayList 和 LinkList分别原创 2015-02-01 11:40:13 · 423 阅读 · 0 评论 -
Iterator(4)--Interface
有时候我们要遍历容器,但是不同的容器的遍历方法是不一样的,所以我们得进一步遍历Interface,抽象出一个Iterator接口,来向用户屏蔽底层遍历的细节。1.首先定义一个Iterator接口:public interface Iterator { Object next(); //下一个数据节点 boolean hasNext(); //是否有下一个}2.在Coll原创 2015-02-01 13:30:20 · 436 阅读 · 0 评论 -
Think in OO(1)
1.抛出问题:”老张开车去东北“ 这句话用面向对象的思想来实现。2.首先可以抽象出司机类(Driver),汽车类(Car)(ps:后面会进一步完善),目的地类(Address)。3.考虑每个类中应该有哪些属性: (1)Driver类应该包括name. (2)Car类先不说了,想到了再说。 (3)Address类也应该有个name(目的地名)。4.考原创 2014-12-28 18:55:25 · 810 阅读 · 0 评论 -
设计注意
1.设计没有绝对的对与错2.Over Design也是一种罪过3.没有任何实际中的设计会一步到位4.初学者不要考虑太多的原则和条条框框,最重要是动手写5.抽象类与接口6.享受OO的乐趣吧转载 2015-01-02 12:27:31 · 349 阅读 · 0 评论