Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 继承和扩展类_Java_Android_Inheritance_Extensibility - Fatal编程技术网

Java 继承和扩展类

Java 继承和扩展类,java,android,inheritance,extensibility,Java,Android,Inheritance,Extensibility,这对许多人来说可能有一个明显的答案,但我似乎不明白。我试图在android应用程序中调用api,但一直遇到“……无法解决”我有三个Java类,FoodSearchActivity、GetItemsActivity和GetData FoodSearchActivity extends Activity; 此类声明如下 public ListView list; public Button btnSearch; public EditText txtFoodSearch; 但是在GetItem

这对许多人来说可能有一个明显的答案,但我似乎不明白。我试图在android应用程序中调用api,但一直遇到“……无法解决”我有三个Java类,FoodSearchActivity、GetItemsActivity和GetData

FoodSearchActivity extends Activity; 
此类声明如下

public ListView list;
public Button btnSearch;
public EditText txtFoodSearch;
但是在
GetItemsActivity
类中,除非扩展
FoodSearchActivity
,否则无法解析
txtFoodSearch
。这反过来意味着我无法实现
AsyncTask
。当
GetItemsActivity
实现了
AsyncTask
时,我得到了错误:

 " The type AsyncTask<String,String,String> cannot be a superinterface of GetItemsActivity; a superinterface must be an interface"

GetItemsActivity extends FoodSearchActivity;
当我这样做的时候,我没有错误,但是当我这样做的时候

txtFoodSearch.getText().toString();
我回到了无法解决的
txtFoodSearch
txtFoodSearch
是一个接受用户输入的
EditText
字段。如何更改此设置,以便
txtFoodSearch
在其他类中可见??
它已经被宣布为公共的。任何提示或建议都很好。如果需要,可以发布源代码

尝试遵循您分配给txtFoodSearch的公共声明,声明为static。这是因为static关键字使txtFoodSearch等变量在加载其类时可全局访问

因此,在相应的类中声明公共静态txtFoodSearch后,您应该能够在任何其他类中执行:Classname.txtFoodSearch以访问txtFoodSearch的内容。但是,请确保包含txtFoodSearch的类声明为public

txtFoodSearch.getText().toString();