
下記コードについて教えて下さい。
class Ticket {
TicketType type;
int times = 1;
int no; boolean entering = false;
Ticket(int no, TicketType type) {
this.type = type;
this.no = no;
}
Ticket(int no, TicketType type, int times) {
this(no, type);
this.times = times;
}
/**
- 入館時の処理
*/
void enter() {
System.out.println(getDisplayText() + "\t入館: ");
if(entering) {
System.out.println("現在利用中です。");
return;
}
if(times <= 0) {
System.out.println("利用可能残数がありません。");
} else {
System.out.println(getDate(Calendar.getInstance()));
times--;
entering = true;
}
}
このコード内にあるif文で、enteringが入るのは何故か理解できません。
enteringはfalseとして宣言している為、if文の中にある現在利用中ですという入館文は実行されないのでは??
!enteringが入れば理解できるのですが、どなたか解説をお願いします。

0 コメント