このクラスは、final と宣言されていますが、フィールドは protected と宣言されています。 クラスは fainal なので派生できません。、protected の使用は紛らわしいです。 フィールドのためのアクセス修飾子は、フィールドの真の用途を表すため、 private か public に変更するべきです。