集合类对象的使用范围:静态代码块里面、方法体里面?

zengchunming 2012-08-10 10:11:27

小弟写的一段代码:Vector vector=new Vector(5);
EnemyTank enemyTank=new EnemyTank(100, 100, 5, '?');
vector.add(enemyTank);

开始,放在一个类里面(但不在这个类的任何方法里面),直接报错,eclipse直接不提示有vector对象。

第一种修改:
将其放在静态代码块里:
static{
Vector vector=new Vector(5);
EnemyTank enemyTank=new EnemyTank(100, 100, 5, '?');
vector.add(enemyTank);
}

居然通过了编译。


第二种修改:
将其放在这个类的一个方法体里:

class Gra {

public void show()
{
Vector vector=new Vector(5);
EnemyTank enemyTank=new EnemyTank(100, 100, 5, '?');
vector.add(enemyTank);
}

}

居然也通过编译。



这时,想问一个问题:
集合类建立的对象,比如Vector类建立的vector对象,必须使用在一个类的static静态代码块里,或
一个类的方法体里面吗? 这样才是正确的?

先不考虑泛型!








...全文
197 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
weitao1234 2012-08-12
  • 打赏
  • 举报
回复
基本语法。。。。。
anod 2012-08-11
  • 打赏
  • 举报
回复
还是建议再复习下基本语法。。。。。。。
qqliang1314 2012-08-11
  • 打赏
  • 举报
回复
这跟集合没关系,java的类里除了属性,方法,内部类等外,不允许有单独存在的代码块,除非放在static{}里
龙四 2012-08-10
  • 打赏
  • 举报
回复

public class Test {
private String a = "";
a.getBytes();
}


这些都是一个道理,不是什么东西能放到{}外的
nmyangym 2012-08-10
  • 打赏
  • 举报
回复
好好理解一下你的另一帖子,龙四的回复。
龙四 2012-08-10
  • 打赏
  • 举报
回复
这跟集合木有关系,这是java基本语法问题

public class Test {
private int a = 1;
a = 2;//ERROR
}

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧