setterとgetter
一般的に、classのフィールドのアクセス修飾子設定はprivateにし、フィールドは外部に対し隠蔽すべきとされています。
これは、C言語などで変数が簡単に外部のプログラムによって値を壊されてしまう経験から推奨されていることです。
しかし、フィールドのアクセス修飾子をprivateに設定したからといって、同じクラスからはアクセスできるので完全に安全というわけではありません。不注意で自分自身が変数の値を壊してしまうことは起こりえることだからです。
そこで、アクセス修飾子だけに頼るのではなく、プログラム的に値の変更の正当性、妥当性をチェックして設計時の意図に反する値の変更を避けることが出来るように、setter、getterメソッドを経由してのみフィールドにアクセスするのが熟練の技、ベストプラクティスです。
setterは名前の通りフィールドの値を設定するメソッドで、getterはフィールドの値を取出すメソッドです。
通常はsetterもgetterもアクセス修飾子はpublicで設定し、全てのクラスからアクセス可能にしますが、フィールドの値変更を特定のクラスのみに限りたい場合は、getterのみpublicに設定し、setterをデフォルト又はprotectedに設定する場合もあります。
なお、フィールドの変数の数が多くなるとsetterとgetterのコーディング自体が面倒だったり、タイプミスをしたりします。
これらの対策としてEclipseでは、メンバ変数をカーソルで選択し[ソース]-[getterおよびsetterの生成]で自動的にsetter、getterのコードを生成する事が出来ます。