我在某处看到了这段代码并且想知道:何时以及为什么有人会做以下事情:
doSomething( (MyClass) null );
Run Code Online (Sandbox Code Playgroud)
你有没有这样做过?你能分享一下你的经历吗?
可能重复:
Java数组参数"声明"语法
我已经看到...在java中的对象类型和对象名称之间使用.我认为它代表了对象的集合.请注意以下示例:
public setMembers(Member... members);
Map map = ...;
Run Code Online (Sandbox Code Playgroud)
我的问题是"......"的真正含义是什么?我从来没有在他们解释过的任何文档中看到过这个.
我无法理解这个问题,并解释了SCJP 1.6自测问题的答案.这是问题所在:
class A { }
class B extends A { }
public class ComingThru {
static String s = "-";
public static void main(String[] args) {
A[] aa = new A[2];
B[] ba = new B[2];
sifter(aa);
sifter(ba);
sifter(7);
System.out.println(s);
}
static void sifter(A[]... a2) { s += "1"; }
static void sifter(B[]... b1) { s += "2"; }
static void sifter(B[] b1) { s += "3"; }
static void sifter(Object o) { s += "4"; }
}
Run Code Online (Sandbox Code Playgroud)
结果是什么?答案是-434,但让我失望的是这本书的解释.它与本章前面解释的概念有很大不同. …
任何人都可以确认我是否正确看到Object...下面方法调用中的参数:
public static void setValues(PreparedStatement preparedStatement, Object... values)
throws SQLException
{
for (int i = 0; i < values.length; i++) {
preparedStatement.setObject(i + 1, values[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
作为Object类型的数组?我不记得...之前在Java中看过.
我正在编写一个Android客户端,用于使用基于SOAP的Web服务.我正在使用一个AsyncTask来执行网络(即调用webservice)操作.我正在写客户端.
现在,当我尝试实施AsyncTask的doInBackground方法,我会在下面的两个错误protected String
doInBackground(String[] params)... ,如果我写了@Override
与它的注释:
MainActivity.MyTask类型的方法doInBackground(String [])必须覆盖或实现超类型方法.1快速修复:删除"@Override"注释
以及以下错误private class MyTask extends
AsyncTask...:
MainActivity.MyTask类型必须实现继承的抽象方法AsyncTask.doInBackground(String [] ...).2快速修复:添加未实现的方法(使用
注释doInBackground再次自动生成
方法).使类型'MyTask'抽象.@Override
如果我不写了@Override注释,我只得到了第二个错误.
...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String [] params = {URL, METHOD_NAME, NAMESPACE};
}
private class MyTask extends AsyncTask<String[], Void, String> {
//@Override write it or not write it? :s ****************
protected String doInBackground(String[] params) { …Run Code Online (Sandbox Code Playgroud)