框架设计思维符合语义即可使用,而不用关心底层的实现

框架设计思维符合语义即可使用,而不用关心底层的实现

 

1,例如:自己设计一个动态数组时,实现清空操作

ArrayList arrayList = new ArrayList();   //ArrayList 这里是咱自己设计的一个动态数组 
arrayList.clear();    //执行完清空操作后,接下来的get操作就get不到了(符合咱语义设计)
arrayList.get(1);
arrayList.add(1111);        

 

 

 (即使原来的数据残留在数组容器中,但是clear 操作执行后,达到了语义“清空的效果”啦)

(而且也没造成内存的浪费呀,如果接下来,咱要进行添加操作的话,elements[size] = element; size++; ) //清空后size = 0, 添加操作执行后,size++,即size = 1;

(咱的可操作范围依然是设计在size范围内进行操作啦)

 

总结:外面语义是清空,但是框架设计实现的是清空的效果,没必要真正的去清空内存、数据之类的...

 

2,  静态成员常量如果对外界可见(可访问的话),将其放到接口中

 (如果放到 中间那个抽取公共代码的抽象父类的话,它对外界是不可见的)

 

 (抽象类一般设计用于抽取公共代码,例如某些方法的实现,不对外公开(不可见))

 

3,设计思路2:能循环利用的空间留下,不能循环利用的销毁

(1)设计动态的数组时 增删改查的元素 是int 类型时:

 

 

 

(2)设计动态的数组时 增删改查的元素 是object 类型(泛型)时:

 

 

 4,干脆初始化node 是其中一种情况结果的值(而且这个值还属于比较前的值,例如first)

 

 

 

 

posted @ 2021-10-07 14:57  一乐乐  阅读(71)  评论(0编辑  收藏  举报