局部变量与引用变量在栈中,实例变量跟随类的实例化对象在堆中
实例变量是声明在类中方法之外的地方。
类的实例化对象在堆上,实例变量存在于对象所属的堆空间上。
局部变量声明在方法或方法的参数上。
所有局部变量都存在于栈上相对应的堆栈块(方法栈)中。
对象引用变量与主数据类型变量都是放在栈上。
重载构造函数的意思代表你有一个以上的构造函数且参数都不相同
chapter 16 集合与泛型(数据结构)
- 集合
- ArrayList:
- 不是唯一的集合
- TreeSet:
- 以有序状态保持并可防止重复。
- HashMap:
- 可用成对的name/value来保存与取出。
- LinkedList:
- 针对经常插入或删除中间元素所设计的高效率集合。(实际上ArrayList还是比较实用)
- HashSet:
- 防止重复的集合,可快速地找寻相符的元素。
- LinkedHashMap:
- 类似HashMap,但可记住元素插入的顺序,也可以设定成依照元素上次存取的先后来排序。
- ArrayList:
- 泛型:
- 泛型意味着更好的类型安全性:让编译器帮忙防止你把Dog加到一群Cat中
- 三件重要事情:
- 创建被泛型化类的实例
new ArrayList<Song>()
- 声明与指定泛型类型的变量
List<Song> songList = new ArrayList<Song>()
- 声明与调用取用泛型类型的方法
void foo(List<Song> list)
x.foo(songList)
- 创建被泛型化类的实例
- 使用泛型的类
- 类的声明
- 新增元素的方法的声明
- 运用泛型的方法:
- 泛型的类代表类的声明用到类型参数。
- 泛型的方法代表方法的声明特征用到类型参数。
- 在方法中的类型参数有几种不同的运用方式。
- 使用定义在类声明的类型参数
- 使用未定义在类声明的类型参数
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达,可以邮件至 963614756@qq.com。