为什么Arraylist里面的方法和成员变量不用static修饰 它们不是都共享的吗
解决方案 »
- 这是暴栈了吗?
- 一个面试题:String s = new String("xyz");创建了几个String Object?
- 如何查看堆区中已经存在某个类的实例对象?请指教,谢谢!
- 约瑟夫环(java)算法,一直困扰着我们,我们是不是应该把他解决掉呢?
- 菜鸟提问啦(各位好人快来帮忙啊)
- 求助大虾,JTextPane的几个问题
- 关于数据库的问题
- 如何将用ejb从数据库中查询出来的数据保存到excel表格中?
- 谁能告诉我阿里巴巴杭州人力部的分机号啊
- 新人,刚接触java不久
- 多线程中,会在system.out.println(name+"----"+age)运行到一半的时候被其他线程抢走执行权吗
- java 如何在窗体中绘制简单地图
如果不是,下面的文字无视。
如果是:
我建议楼主改行,鉴定完毕!楼下有和我意见不一的请朝我开炮。
String : 表示所有 字符串的类,那么它有一系列的方法都是针对字符串的。
ArrayList : 可以理解为动态数组,它是 一组数据 作为一个对象 的类。你认为静态的 方法可以找 java.util.Collections ,它是工具类。
-----------补充说明
那么什么才是 “普通类”(区别于工具类),什么又是工具类 ? 为什么要工具类呢?其实 最初肯定都是普通类。 学生,水果 活生生的普通类,因为立刻有对应的 对象(张三, 苹果)。有类了肯定要进行操作,那么就 涉及到成员方法 。(张三 ; 学习,睡觉等)。反过来说说ArrayLIst,它是一个动态数组(多元素,元素有序【】,可重复等),它有增删改查。 LinkLIst 也有 增删改查,
你会说那就抽象一个接口 (增删改查) ,对的java 就是这么做的 LIst 接口来实现。List 就是包含共有动作的一个“类”
此时 如果要反转一下ArrayList 的顺序如何呢?
你肯定回答,那不就是 ArrayList 中在定义一个reverse 方法吗? 其实这样不符合面向对象编程的思想。 reverse 并不是ArrayList
必须提供的功能,即: 没有reverse 方法就不叫ArrayList? 错误的逻辑。 LinkList 也需要呢?
这时候你就可以定义一个工具类 ListTools 里边 有 reverse(List<E> list) 。 把基本操作或者复杂操作 也看成一个对象(工具类),封装起来。
粗俗理解: 学生吃东西, 员工也吃东西。 把吃东西封装起来, 就是食堂。 吃东西,想到食堂,至于谁吃我不管。