声明类变量的一个细节
今天才发现,声明类变量的时候如果要赋值的话只能在一个语句内完成。
例:
class A
{
private int B=10;
}
如果改成:
class A
{
private int B;
B=10;
}
则编译时报错:错误 1 类、结构或接口成员声明中的标记“=”无效
(我的理解:B=10是表达式,类中只有函数内部或者一次性声明变量并赋值能用=号赋值)
再看下例:
class B
{
A aClass=new A();
private int c = aClass.addNumber();
}
class A
{
private int a = 10;
private int b = 10;
public int addNumber()
{
return a + b;
}
编译时报错:错误 1 字段初始值设定项无法引用非静态字段、方法或属性
希望能对和我一样的新手有所体会。高手挥挥衣袖一笑而过吧~~~
(我的理解:在类中(非函数内)声明变量时,变量名无条件只能出现一次,此例中aClass在声明和引用的时候出现了两次)
[此贴子已经被作者于2006-10-17 1:57:15编辑过]