那两段for初始化语句不包含在类的任何方法体中,也不是属于由static { }来声明的static initializer,这种语句在Java中是不合法的。
其实概念很简单,这几句代码什么时候执行?看上去你是想在产生一个类的实例的时候,那么把这两段放在类的构造函数中就是了,否则如果有第二个实例产生的时候,你的代码产生的东西是算谁的呢?如果放在static{} 之中,那么产生的东西是属于整个类的,任何类实例访问的均是相同的东西也行,但是可以这样初始化的类属性本身也必须由static来声明才可以。
其实概念很简单,这几句代码什么时候执行?看上去你是想在产生一个类的实例的时候,那么把这两段放在类的构造函数中就是了,否则如果有第二个实例产生的时候,你的代码产生的东西是算谁的呢?如果放在static{} 之中,那么产生的东西是属于整个类的,任何类实例访问的均是相同的东西也行,但是可以这样初始化的类属性本身也必须由static来声明才可以。
解决方案 »
- 求教java线程问题
- 在JAVA中将下列字符串保存到SQL2000中不成功:
- Jsp中监听的问题
- 弹出对话框,让用户选择文件保存位置的程序怎么写
- Vector内容显示到JTable,java.lang.ArrayIndexOutOfBoundsException改过很多次,还是没解决?
- 严重请教:如何根据数据库内容的变化刷新JTree?谢谢!
- 如何在文本框里实现查找功能,象记事本里的功能一样,一查就使找到的文本反显出来
- 谁能帮我解释一下下面的程序。。。。。。。。
- 基础问题:关键字final的作用含义是什么,与static有何区别?
- 请大家不要局限于三言两语的小问题,像VC那样做大的project
- 急救!jdk帮助里的那个corba的例子helloword的运行
- 请问我写的类如何打包..........
看来,你对OOP的知识太少了。建议你看本面向对象的书看看吧。
一个类里只能有两种类型的东东:1,属性(也就是变量)2,方法(也就是函数)
呵呵,你的for程序段属于什么啊?
具体的。把你的for循环放到构造函数中就可以了。OK。