java final域
2015-05-31 15:47
459 查看
public final class ThreeStooges { /* * stooges是Set<String>类型的引用,final限定该引用成员属性stooges被赋初值后,就不能再改变去引用其他的同类对象 * final只是限定了声明的引用stooges不能改变,stooges引用的对象能不能改变,由被引用对象本身的类定义来决定 */ private final Set<String> stooges = new HashSet<String>(); public ThreeStooges() { stooges.add("Moe"); stooges.add("Larry"); stooges.add("Curly"); //stooges = new HashSet<String>(); //The final field ThreeStooges.stooges cannot be assigned } /** * 向被引用的HashSet中添加一个元素 * final域stooges仍引用着赋初值时的那个HashSet对象,而stooges.add(name);只是向被引用的被引用的HashSet中添加一个元素 * @param name */ public void add(String name) { stooges.add(name); } public boolean isStooge(String name) { return stooges.contains(name); } public void print() { Iterator<String> iterator = stooges.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next() + ", "); } } public static void main(String[] args) { ThreeStooges ts = new ThreeStooges(); ts.add("asn"); ts.print(); } } 输出:
Moe,
asn,
Curly,
Larry,
相关文章推荐
- Java的引用类型(附图说明)
- Java笔记--集合
- Java笔记--异常
- JAVA 静态代码块
- 如何在Ubuntu 14.04中安装最新版Eclipse
- java final 内部类使用外部的局部变量
- 初识Java
- java web 开发资料链接
- OSS实现多文件多线程的断点上传(java)
- 解决JAVA字符串长度与数据库字符串长度不一致问题
- 疯狂Java学习笔记(62)------------线程初识
- Java基本语法学习时需要注意的几点
- java集合排序
- Java实现二叉排序(查找)树的操作
- java学习之集合框架工具类
- 一款工具助你减少java代码bug
- Java反射基础(二)— Class类
- java io操作整理
- java复习(五)
- Dijkstra算法java现实