java - 在java中使用new关键字而不定义变量
问题描述
以下代码用于在变量中创建类的对象:
ClassName obj = new ClassName();
但是如果我们不创建任何变量而只输入以下内容呢?
new ClassName();
当我使用它时,没有错误。但是当没有创建变量时它实际上做了什么?
解决方案
两种方法都创建一个对象,但第二种方法没有它的名称。
当您创建 ClassName 的实例时,您的第一种方法和第二种方法之间的区别在于,对于您的第一种方法,您实际上可以访问类中的变量和方法。
例如,
ClassName obj = new ClassName();
System.out.println(obj.x);
其中类名
class ClassName {
public static int x = 2;
}
这种方法的好处是您可以访问类中的变量。如果您使用第二种方法,那么实例将没有名称,因此您将无法访问变量。
推荐阅读
- node.js - 将 .then(value) 中的值设置为以后可以使用的全局值
- javascript - 用乘法 256 javascript 在数组中查找数字对
- javascript - Discord.RichEmbed 不是构造函数
- redirect - CodeIgniter 4 返回错误:传递给 set_value() 的参数 2 必须是字符串类型,给定对象
- python - Deep Q - 在 Python 中使用 Tensorflow 学习 Cartpole
- go - 在 Go 中查看优先级队列的顶部?
- ios - UIStackView 灵活宽度和等宽项
- git - 从 Git 中删除文件,但不要为远程用户删除,只是忽略它
- .htaccess - 带有 id 的 url 没有转向友好的 url
- windows-10 - 跳过未打开的输出文件子项错误 34565