Java android新手-无法在受保护的静态方法中访问全局变量

Java android新手-无法在受保护的静态方法中访问全局变量,java,android,Java,Android,这是我的密码: protected static Bitmap scaleImage() { Bitmap nad = BitmapFactory.decodeFile(path); return nad; } “path”是一个全局变量,它给了我一个错误说明:无法对非静态字段路径进行静态引用。。。这可能是因为路径是字符串,而不是静态的。。但是,我还能如何访问这里的其他变量呢?我试图查看文档,但找不到任何内容。您的变量path在您的类中声明如下: String path; 这意味着

这是我的密码:

protected static Bitmap scaleImage() { 
Bitmap nad =    BitmapFactory.decodeFile(path);

return nad;
}

“path”是一个全局变量,它给了我一个错误说明:无法对非静态字段路径进行静态引用。。。这可能是因为路径是字符串,而不是静态的。。但是,我还能如何访问这里的其他变量呢?我试图查看文档,但找不到任何内容。

您的变量
path
在您的类中声明如下:

String path;
这意味着它是一个实例变量,属于类的特定副本
scaleImage()
不属于任何特定副本,因此不能使用
path
,因为系统无法知道您要的是哪个副本


此方法可能应该将
path
作为参数,而不是硬编码,或者它不应该是
static
,应该在类的特定实例上调用。

基本上,您走的是正确的道路<代码>路径必须是
静态
。仅仅是类中的成员变量是不够的-类级变量不会自动
静态
(这是个问题)


Java中不存在全局变量,所以我猜您所说的是在类级别声明的变量。(变量在类中,类在包中,包可以在其他包中-因此它远不是“全局的”。

恐怕Android中没有全局变量。请把全班发出去。您应该熟悉OOP的基本概念,以及类的静态变量和实例变量。我需要将位图对象从类1访问到类2,所以它认为这就是方法,您还有其他建议吗?我们有其他建议。;-)但是请发布更多的代码,这样我们都能确定我们在谈论什么。@fishman-你的问题被否决了,因为你没有展示你的工作,很明显你不明白。但是如果你表现出更多的努力和更多的代码,人们会在这里帮助你。