java类里面的变量通过set方法赋值和通过this.对象赋值有什么区别吗?

在看以前写过的代码的时候遇到一些疑惑。
在一个方法中,需要对一个变量

 List<Object> field1 = new ArrayList<Object>();

进行赋值,代码使用的是 this.field1.add(xxx) ;
而在对这个变量 field1 进行判断的时候,才会用get方法获取变量进行判断。
如下:

this.field1.add(xxx);
if(getField1() != null){
  this.field1.addAll(xxx);
}

我在想是为啥不使用get方法获取变量再使用add 如: getField1().add(xxx)
我想从可读性和两者的区别听听大家的见解。

你要用get方法,一定是想在类的外部去取值的时候才这么用,避免一个只读的属性被错误的赋值,或者一个不可修改的值被错误的改变
在类内部,都是写这个类的人自己实现的,没必要多此一举还去调用属性
通过set方法赋值也一样,比如你有个窗体,可以动态的改变宽和高,那么你暴露出来的size属性变化的时候你要去改变窗体本身的size属性。这样既可以保证数据必须按照你规定的方法赋值,也可以保证当数值被改变的时候你是可以处理的,而如果把内部变量直接交给外面随便修改就达不到这种效果。

this.field1.add(xxx);
field1是集合对象,add()方法是集合提供添加对象的方法。
getField1()方法是获取当前对象属性的方法。
能使用this是看具体使用场景的,this表示当前对象的意思,你在当前对象内就可以使用this获取属性。

现在无法确定getField1()函数的具体实现是什么,它可能返回的不是field类型,所以不能getField1().add这种方式。
如果返回的就是this.field1的话,这么写是可以的

没有区别,
this.对象是在类内部可以调用,