>>222
getter, setterの名前とインスタンス変数に付けた名前が一緒だから
this.hpを左辺値で解釈するとsetterが、右辺値でthis.hpとしてもgetterが呼ばれる。
222のsetterとgetterは永遠に自分を呼び出す