Ich arbeite an einer Hausaufgabe zur Implementierung von Schnittstellen und bin ein wenig verloren. Ich muss die vergleichbare Schnittstelle implementieren und die compareTo() -Methode verwenden. Hier ist der Code meiner Superklasse, es hat drei Unterklassen, die alle verschiedene Formen von Fahrzeugen sind. In diesem Fall versuche ich, die Anzahl der Türen, die sie haben, zu bekämpfen.Java mit der vergleichbaren Schnittstelle
Unten ist der Code für das „Fahrzeug“ Superklasse
package vehicle;
abstract public class Vehicle implements Comparable {
private String color;
private int numberOfDoors;
// Constructor
/**
* Creates a vehicle with a color and number of doors
* @param aColor The color of the vehicle
* @param aNumberOfDoors The number of doors
*/
public Vehicle(String aColor, int aNumberOfDoors) {
this.color = aColor;
this.numberOfDoors = aNumberOfDoors;
}
// Getters
/**
* Gets the color of the vehicle
* @return The color of the vehicle
*/
public String getColor() {return(this.color);}
/**
* Gets the number of doors the vehicle has
* @return The number of doors the vehicle has
*/
public int getNumberOfDoors() {return(this.numberOfDoors);}
// Setters
/**
* Sets the color of the vehicle
* @param colorSet The color of the vehicle
*/
public void setColor(String colorSet) {this.color = colorSet;}
/**
* Sets the number of doors for the vehicle
* @param numberOfDoorsSet The number of doors to be set to the vehicle
*/
public void setNumberOfDoors(int numberOfDoorsSet) {this.numberOfDoors = numberOfDoorsSet;}
public int compareTo(Object o) {
if (o instanceof Vehicle) {
Vehicle v = (Vehicle)o;
}
else {
return 0;
}
}
/**
* Returns a short string describing the vehicle
* @return a description of the vehicle
*/
@Override
public String toString() {
String answer = "The car's color is "+this.color
+". The number of doors is"+this.numberOfDoors;
return answer;
}
}
Derzeit ist es ein work in progress, und ich bin nicht sicher, wohin man von hier auf der compareTo-Methode zu gehen. Jede Hilfe wird sehr geschätzt.
Danke!
bearbeiten Sobald ich die Methode compareTo() arbeitet in der übergeordneten Klasse zu bekommen, ist es etwas, das ich zu den Unterklassen hinzufügen muß diese Funktion machen?
Danke!
Danke, das hilfreich ist. Obwohl ich noch nicht sicher bin, wie man die compareTo() Methode von hier richtig benutzt. Ich bin mir nicht sicher, wie man den numberOfDoors int mit diesen Objekten vergleicht – salxander
ah! Ich habe den Rest deiner Antwort nicht gesehen, danke! – salxander
Sie können nur die altmodischen vergleichen. 'if (this.numberOfDoors