在此构造方法中,要求我设置默认值并实例化TimeBlock。当数据类型是TimeBlock类的对象时,如何实例化时间块?
public class Appointment {
private String description;
private TimeBlock timeBlock;
public Appointment() {
description = "";
// timeblock = ???
}
答案 0 :(得分:0)
您可以这样做
public Appointment() {
description = "";
timeblock = new TimeBlock(); // call constructor here
}
答案 1 :(得分:0)
实例化不同类中的不同对象是完全可以的(并且很常见!),因此,就像Ratish所说的那样,只需将timeblock = new TimeBlock();
添加到构造函数中即可。
答案 2 :(得分:0)
您可以实例化构造函数中的类:
public Appointment() {
description = "";
timeblock = new TimeBlock();
}
答案 3 :(得分:0)
另一种与良好设计原则(如依赖注入)紧密结合的解决方案也可能是将时间块传递给构造函数。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Observable<Integer> observable = Observable.just(1, 2, 3);
observable.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(observer());
}
private Observer<Integer> observer() {
return new Observer<Integer>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(Integer integer) {
Toast.makeText(MainActivity.this, integer + "", Toast.LENGTH_SHORT).show();
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
};
}
}