我是android编程的新手,我正在尝试通过改造连接到服务器并获取一些数据。我做了一个小例子来检查它是否会返回一些数据。首先,我不知道我是否编写了代码来做我想做的事情,其次,我得到了错误:
"错误:(64,52)错误:不是抽象的,并且不重写回调中的抽象方法失败(RetrofitError)"和2个错误"错误:(67,13)错误:方法不重写或实现超类型中的方法"
这是我的代码。
public class MainActivity extends ListActivity{
public static final String ENDPOINT = "http://tinoba.hostzi.com";
List<Jelovnik> jelovnik;
Button gumb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
gumb = (Button)findViewById(R.id.gumb);
}
public void stisni(View view) {
RestAdapter adapter = new RestAdapter.Builder()
.setEndpoint(ENDPOINT)
.build();
JelovnikAPI api = adapter.create(JelovnikAPI.class);
api.getFeed(new Callback<List<Jelovnik>>() {
@Override
public void onResponse(Response<List<Jelovnik>> response, Retrofit retrofit) {
jelovnik = response.body();
gumb.setText(jelovnik.get(0).getIme().toString());
}
@Override
public void onFailure(Throwable throwable) {
}
});
}
}和我的改装界面
public interface JelovnikAPI {
@GET("/read.php")
public void getFeed(Callback<List<Jelovnik>> response);
}
用改装替换可投掷
错误
:
@Override
public void onFailure(RetrofitError retrofitError) {
}
您正在使用的回调
版本来自Retrofit 2
,并且您仍在使用
。回调有两种方法,
失败
和
success
。您的回调应该如下所示
new Callback<List<Jelovnik>>() {
@Override
success(List<Jelovnik> t, Response response) {
}
@Override
public void failure(RetrofitError error) {
}
});
在这个特定的示例中,我扩展了
我这样做对吗?我生成了toString()。
问题内容: 好的,我从很多地方和来源都听说过,每当我覆盖equals()方法时,我也需要覆盖hashCode()方法。但是请考虑以下代码 这里的输出为true,完全按照我想要的方式为false,我根本不关心重写hashCode()方法。这意味着hashCode()覆盖是一种选择,而不是每个人都说的强制性选择。 我想要第二次确认。 问题答案: 它对您有用,因为您的代码未使用任何需要API的功能(Ha
问题内容: Java不允许覆盖静态方法,但是, 在这里没有覆盖吗? 问题答案: 这是“隐藏”,而不是“覆盖”。要看到这一点,请将方法更改为以下内容: 这应该打印: 如果正在进行真正的覆盖,那么您会看到: 通常认为使用实例类型来调用静态方法是一种不好的方式,就像您正在做的那样,因为很容易想到您正在调用实例方法,并且容易误以为重写正在发生。Java样式检查器/代码审核工具通常会将其标记为样式错误/潜在
问题内容: 我正在考虑一个项目的春季数据。是否可以覆盖默认生成的保存方法?如果是的话,怎么办? 问题答案: 没有使它很好地工作,所以我将所需的逻辑放入服务类中,并保持存储库保存方法不变。
问题内容: 是否可以在Python中覆盖+ =? 问题答案: 是的,重写该方法。例: