我对"this“这个关键字有点困惑。下面是两个输出相同的代码示例,那么它们之间的区别是什么呢?我还有其他的screen课程。但是game的起点是SplashScreen。
public class GDXGame extends Game {
@Override
public void create() {
AssetLoader.load();
setScreen(new SplashScreen(this));
}
@Override
public void dispose() {
super.dispose();
AssetLoader.dispose();
}
}和第二个:
public class GDXGame extends Game {
@Override
public void create() {
AssetLoader.load();
setScreen(new SplashScreen());
}
@Override
public void dispose() {
super.dispose();
AssetLoader.dispose();
}
}发布于 2017-10-10 18:59:34
this引用当前类的当前实例,因此第一个示例将从其中调用#create()的当前GDXGame类实例发送到SplashScreen构造函数,而第二个示例将调用SplashScreen的空构造函数。至于为什么它们的行为相同或看起来相同,这取决于SplashScreen实例如何处理对GDXGame的引用
https://stackoverflow.com/questions/46664714
复制相似问题