实例化引用类对象的数据类型

时间:2019-02-14 06:06:56

标签: java

在此构造方法中,要求我设置默认值并实例化TimeBlock。当数据类型是TimeBlock类的对象时,如何实例化时间块?

public class Appointment {
private String description;
private TimeBlock timeBlock; 


public Appointment() { 
    description = "";
    // timeblock = ???
}

4 个答案:

答案 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() {

            }
        };
    }
}