この場合、class
の内容にアクセスする必要があります:ParkingMeter
別のクラスの別のメソッド:public static void checkTheCar(ParkedCar pc, ParkingMeter pm)
のパラメータを使用しますが、その方法はわかりません。方法checkTheCar
はParkingMeter
から整数を検索し、正しい範囲内にあるかどうかを確認する必要があります。 アドバイスをいただければ幸いです。javaのパラメータでクラスの内容にアクセスしていますか?
public static class ParkingMeter {
int time;
public ParkingMeter(int hours,int minutes){
time = (getMinutes(hours,minutes));
}
private int getMinutes(int hours, int minutes){
int time = (hours * 60) + minutes;
return time;
}
}
public static class ParkedCar{
String CompanyName; // Company name
String Model; // Car model
String Color; // Car color
String PlateNumber; // License plate number
String Minutes; // number of minutes parked
public ParkedCar(String companyName, String model, String color,String plate, String minutes){
CompanyName = companyName;
Model = model;
Color = color;
PlateNumber = plate;
Minutes = minutes;
}
}
public static class PoliceOfficer{
String OfficerName;
String BadgeNumber;
public PoliceOfficer(String name,String badge){
OfficerName = name;
BadgeNumber = badge;
}
public static void checkTheCar(ParkedCar pc, ParkingMeter pm){
// do something
}
}
素晴らしい答えですが、私はなぜあなたが '@ Override'を使用したのかと不思議に思っています。 – Ronald
@Ronald:toString()はObjectから継承されたメソッドなので、ここではオーバーライドされています。このアノテーションはこれを指定します。コードをコンパイルするのに使用する必要はありませんが(他のいくつかのアノテーションにはそれが必要です)、継承されたクラスやインタフェースのメソッドをオーバーライドするときは常にこのアノテーションを使用することをお勧めします。 –
@Ronald:おそらくgetter/setterをParkedCarに追加して、デザインを一貫させるべきでしょう。 –