关于java的ArrayList定义的问题

如图,我看到这个例子中为了将list类型的coursesToSelect实例化,专门将他定义在封装类中,这样有什么好处吗,我觉得直接定义在如图所示的位置还方便点。
图片说明

这两种写法其实是等价的。写在外面,其实编译器还是放在构造函数里执行。

在类里可以作属性成员实例化这样就可以每个方法都可调用,放在方法里就只能在方法里使用,你这个只在ListTest这个方法中使用到了