这是一个非常普遍的问题,我想提前为noob问题道歉但是......
在java中,一般来说,是否有一个特定的行内声明名称,或者只是简单地调用它?
我指的是声明对象的以下方法:
panel.add(new JLabel("Hello World"));
而不是:
JLabel label = new JLabel("Hello World);
panel.add(label);
答案 0 :(得分:2)
我认为没有特定的名称。
但是,你并没有“宣布”这个标签。你只是在“实例化”一个实例。答案 1 :(得分:2)
我认为没有,内联脚本或正在运行的代码是我所听到的所有内容,有时是单行分隔。
JLabel labe;
panel.add(labe = new JLabel("Hello World"));
//Instantiation
JLabel label = **new** JLabel("Hello World);
//declaration
JLabel label,label2,label3;
答案 2 :(得分:2)
人们似乎把它称为“匿名对象”或“未命名对象”。另请参阅https://stackoverflow.com/a/5330408/659002
答案 3 :(得分:1)
Java语言规范调用
new JLabel("Hello World")
JLabel label = new JLabel("Hello World);
a variable declaration with a variable initializer(初始化程序恰好包含实例创建表达式)。
也就是说,JLS说变量是声明,对象已创建。这些是独立的概念;您可以在不创建对象的情况下声明变量,并在不声明变量的情况下创建对象。
为了强调代码示例之间的区别,你可以说你做(或不做)声明变量,如“不需要在这里声明变量”或“将引用放入变量有助于调试”。