我理解创建对象和创建变量之间的区别。例如:
private int number;
MyClass myObj = new MyClass();
Run Code Online (Sandbox Code Playgroud)
但我的观点是这两者之间有什么区别?
private MusicPlayer player;
player = new MusicPlayer();
Run Code Online (Sandbox Code Playgroud)
MusicPlayer 是一个类,但我们到底在做什么?
private MusicPlayer player;
Run Code Online (Sandbox Code Playgroud)
在这里,您创建了一个MusicPlayer类的引用变量(但它不会创建一个对象)而没有对其进行初始化。所以你不能使用这个变量,因为它没有指向任何地方(它是空的)。
例如,使用一个Point类:
Point originOne;
Run Code Online (Sandbox Code Playgroud)
可以这样表示:

player = new MusicPlayer();
Run Code Online (Sandbox Code Playgroud)
在这里,您分配一个类型为 的对象,MusicPlayer并将其存储在player引用中,以便您可以使用其上的所有函数。
例如,使用一个Point类,带有x和y坐标:
Point originOne = new Point(23, 94);
Run Code Online (Sandbox Code Playgroud)
可以这样表示:

两行的组合相当于:
private MusicPlayer player = new MusicPlayer();
Run Code Online (Sandbox Code Playgroud)