Oto moja praca domowa pytanie:Java Homework Help (Dostęp do statycznego elementu poprzez Instancji Reference)
Napisz deklarację klasy dla klasy „Zegar”. Powinien zawierać zmienne instancji dla godzin, minut i sekund (wszystkie liczby całkowite). Powinien również posiadać metodę toString(), aby pokazać czas w formacie pokazanym poniżej. Napisz oddzielną klasę "ClockDriver", aby a) utworzyć instancję zegara, b) ustawić godziny, minuty i sekundy zegara oraz c) pokazać czas zegara za pomocą metody getTime(). Użyj przykładu klasy Dog na stronie 36 jako przewodnika. Sample z przedstawiono poniżej:
jest godzina 03:45:00
// nie martw się, jeśli nie można dostać zarówno zer w
// drugim polu. To jest kwestia formatowania
// zajmiemy się później
Oto moja klasa Zegar:
class Clock {
int hours;
int minutes;
int seconds;
public String toString() {
String temp = ("");
return temp.format("%02d:%02d:%02d", hours, minutes, seconds);
} //end method toString
public void getTime() {
System.out.print("The time is " + toString());
} //end method getTime
} //end class Clock
A oto moja klasa ClockDriver:
public class ClockDriver {
public static void main (String[] args) {
Clock c = new Clock();
c.hours = 4;
c.minutes = 30;
c.seconds = 00;
c.getTime();
} //end main
} //end class ClockDriver
Mimo że kompiluje się dobrze i działa ładnie, dostaję to, co moim zdaniem jest ostrzeżeniem od IDE, mówiąc, że mój
return temp.format("%02d:%02d:%02d", hours, minutes, seconds);
linia uzyskuje dostęp do statycznego elementu poprzez odwołanie do instancji. W szczególności bit o pewnej liczbie bitów.
Więc moje pytania to:
1.) Dlaczego dostępu statycznego elementu poprzez odniesienie instancji nie muszą zachęcać?
2.) Czy istnieje lepszy sposób, aby połączyć to tak, że nie mam dostępu do statycznego członka poprzez odwołanie do instancji?
Z góry dziękuję!
+1 wyłącznie dla nazwy użytkownika. –