gpt4 book ai didi

java - 为什么我不能从另一个类访问这个方法?

转载 作者:行者123 更新时间:2023-11-30 04:39:56 25 4
gpt4 key购买 nike

我有主类扩展 MapActivity,像这样:

public class main extends MapActivity {
private MapView mapView;

......//something

public MapView getmapView() {
return mapView;
}

........//something
}

为什么我不能像这样访问另一个类中的 getmapView() 方法

MapView mv=main.getMapview()

最佳答案

您将访问静态方法的语法与访问实例(即非静态)方法的语法混淆了。

您希望您的 main 类的每个实例都有自己的 MapView 对象,还是希望所有的 main 对象都共享单个 MapView

如果您希望 main 类的每个实例都有自己的 MapView 实例,那么您需要调用 getmapView() main 类实例上的方法,而不是类本身的名称:

main myObject = new main();
MapView mv=myObject.getmapView();

如果您希望所有 main 对象共享一个 MapView,那么您的 getmapView() 方法和 mapView 成员本身需要声明为 static...

public class main extends MapActivity {
private static MapView mapView;

......//something

public static MapView getmapView() {
return mapView;
}

......//something
}

...然后您可以使用您已经发布的代码行调用静态getmapView() 方法:

MapView mv=main.getMapview();

进一步阅读:看看this article在 Java 教程中进一步解释。

关于java - 为什么我不能从另一个类访问这个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6171031/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com