Ich versuche, einen bestimmten Konstruktor in meiner Java -Klasse zu verstehen. Bessere Alternative (z. B. Enum- oder Konfigurationskarte)?
Hier ist der vollständige Code: < /p>
package sk.stuba.fei.uim.oop.application;
import java.util.Objects;
public class Application {
private String name;
private boolean canInstall;
private boolean startableFromLocked;
public Application(String name, boolean canInstallApplication, boolean startableFromLockedScreen) {
this.name = name;
this.canInstall = canInstallApplication;
this.startableFromLocked = startableFromLockedScreen;
}
public Application(String name) {
// toto nam spravne rozdeli kde ma byť true and false
this(name, (name.equals("AppStore")), (name.equals("Light") || name.equals("Camera")));
}
public String getName() {
return name;
}
public boolean canInstallApplication() { // ci aplikacia sluzi na instalovanie dalsich aplikacii
return canInstall;
}
public boolean startableFromLockedScreen() { // ci mozno spustit bez zadania hesla
return startableFromLocked;
}
@Override
public boolean equals(Object o) {
if (o == null || getClass() != o.getClass())
return false;
Application that = (Application) o;
return canInstall == that.canInstall && startableFromLocked == that.startableFromLocked && Objects.equals(name, that.name);
}
@Override
public int hashCode() {
return Objects.hash(name, canInstall, startableFromLocked);
}
}
< /code>
Ich arbeite an einem Schulprojekt und habe diese Klassenanwendung. Ich bin ein bisschen verwirrt darüber, wie der Konstruktor mit nur einem Parameter (Name) funktioniert, insbesondere wie die booleschen Werte basierend auf dem Namen abgeleitet werden.
So ändern Sie Super Java -Anwendungen PES ⇐ Java
-
- Similar Topics
- Replies
- Views
- Last post