为什么是 "Fragment fragment = null" 片段的定义是什么意思?

Why is a "Fragment fragment = null" and what is meaning of this definition of fragment?

下面是一段来自 FragmentPagerAdapter 的 getItem 方法的代码:

 @Override
    public Fragment getItem(int position) {
        Fragment fragment = null;
        switch (position){
            case 0:
                fragment = new FragmentLight();
                break;
            case 1:
                fragment = new FragmentDark();
                break;
        }
        return fragment;
    } 

问题:

在第一种情况下,您为对象赋予了一个初始值,即空值。在第二种情况下,您将保留未初始化的对象。

重要的部分是后面的代码:如果你能保证在代码可能采取的任何分支中,对象都会被初始化,那么你可以在开始时保持未初始化状态。否则,如果不能保证,编译器会报错(假设您稍后将使用该对象,否则您将收到未使用变量的警告)。