두 개의 다른 클래스 및 시간을 개체로 선언 된 군사 및 표준 시간을 표시하려면 시계를 만드는 것입니다.하지만 이제는 clock
클래스를 으로 확장해야합니다. AMPMclock
에 setAMPM(boolean yes)
메서드가 있습니다. setAMPM(true)
에 군사 시간이 표시되고 거짓이면 일반 시간이 표시됩니다. 제가부울 반환 및 다른 메서드 및 개체에서 사용
AMPMclock clockObject = new AMPMclock();
clockObject.setHour(16);
clockObject.setMin(28);
clockObject.setSec(58);
System.out.println(clockObject.toString());
clockObject.tick();
clockObject.setAMPM(false);
System.out.println(clockObject.toString());
clockObject.tick();
clockObject.setAMPM(true);
System.out.println(clockObject.toString());
clockObject.tick();
System.out.println(clockObject.toString());
그러나 제가 clockObject.setAMPM(true)
또는 clockObject.setAMPM(false)
,369를 이용해 자극
class AMPMclock extends clock
{
boolean setAMPM(boolean yes)
{
return yes;
}
}
class clock
{
private int hours;
private int minutes;
private int seconds;
private boolean yes;
setMin....
setHour...
setSec....
tick() ///moves the clock 1sec
public String toString()
{
if(yes) return String.format("%d:%02d:%02d %s", (hours == 12 || hours == 0)?12 : hours%12, minutes, seconds, (hours < 12)? "AM" : "PM");
else return String.format("%02d:%02d:%02d",hours,minutes,seconds);
//else
}
}
메인 setAMPM
방법을 만들yes 부울은 변경되지 않으므로 다른 방법으로 사용할 수 있습니다. 항상 동일하게 유지됩니다. 어떤 도움이 필요합니까? 세터의 아이디어는 개인 인스턴스 변수를 캡슐화하는 것입니다
boolean ampm = true;
boolean setAMPM(boolean yes)
{
ampm = yes;
return yes;
}
귀하의 질문은 완전히 명확하지 않습니다. 문제가있는 코드를 추가하십시오. –
이 코드는 내 눈을 아프게합니다. –