У меня эти два файла на Java, и мой учитель говорит, что они работают нормально, но мне нужно уменьшить количество частных экземпляров в моем коде. Как вам поступить по поводу этого?Именование переменных частных экземпляров
public class CarV7 {
private String myCarType1, myCarType2, myCarType3;
private int mySmiles1, mySmiles2, mySmiles3;
private int myEmiles1, myEmiles2, myEmiles3;
private double myGals1, myGals2, myGals3;
private double myPricePerGallon1, myPricePerGallon2, myPricePerGallon3;
CarV7(String carType, int eMiles, int sMiles, double gals, double pricePerGallon) {
myCarType1 = carType;
myCarType2 = carType;
myCarType3 = carType;
mySmiles1 = sMiles;
mySmiles2 = sMiles;
mySmiles3 = sMiles;
myEmiles1 = eMiles;
myEmiles2 = eMiles;
myEmiles3 = eMiles;
myGals1 = gals;
myGals2 = gals;
myGals3 = gals;
myPricePerGallon1 = pricePerGallon;
myPricePerGallon2 = pricePerGallon;
myPricePerGallon3 = pricePerGallon;
}
public int calcDistance(int myEmiles, int sMiles) {
return myEmiles - sMiles;
}
public double calcMPG(int distance, double gals) {
return distance/gals;
}
public double calcGPM(double myGals, int distance) {
return myGals/distance;
}
public double totalCost(double pricePerGallon, double gals) {
return gals * pricePerGallon;
}
}
public class CarV7Tester {
public static void main(String[] args) {
String carType1, carType2, carType3;
int sMiles1, sMiles2, sMiles3;
int eMiles1, eMiles2, eMiles3;
double gals1, gals2, gals3;
double pricePerGallon1, pricePerGallon2, pricePerGallon3;
int distance1, distance2, distance3;
double cost1, cost2, cost3;
double mpg1, mpg2, mpg3;
double gpm1, gpm2, gpm3;
carType1 = "06 Saturn View";
carType2 = "03 Toyota Camr";
carType3 = "10 Nissan Leaf";
sMiles1 = 5678;
sMiles2 = 5678;
sMiles3 = 5678;
eMiles1 = 6015;
eMiles2 = 6015;
eMiles3 = 6015;
gals1 = 15.8;
gals2 = 17.6;
gals3 = 14.9;
pricePerGallon1 = 2.67;
pricePerGallon2 = 2.8;
pricePerGallon3 = 2.58;
CarV7 car1 = new CarV7(carType1, eMiles1, sMiles1, gals1, pricePerGallon1);
CarV7 car2 = new CarV7(carType2, eMiles2, sMiles2, gals2, pricePerGallon2);
CarV7 car3 = new CarV7(carType3, eMiles3, sMiles3, gals3, pricePerGallon3);
distance1 = car1.calcDistance(eMiles1, sMiles1);
distance2 = car2.calcDistance(eMiles2, sMiles2);
distance3 = car3.calcDistance(eMiles3, sMiles3);
cost1 = car1.totalCost(pricePerGallon1, gals1);
cost2 = car2.totalCost(pricePerGallon2, gals2);
cost3 = car3.totalCost(pricePerGallon3, gals3);
mpg1 = car1.calcMPG(distance1, gals1);
mpg2 = car2.calcMPG(distance2, gals2);
mpg3 = car3.calcMPG(distance3, gals3);
gpm1 = car1.calcGPM(gals1, distance1);
gpm2 = car2.calcGPM(gals2, distance2);
gpm3 = car3.calcGPM(gals3, distance3);
System.out.printf("%40s", "Gas Mileage Calculations");
System.out.println();
System.out.printf("%-13s %12s %10s %10s %10s %8s %6s %10s %10s", "Type of Car", "Start Miles", "End Miles", "Distance", "Gallons", "Price", "Cost", "Miles/Gal", "Gal/Mile");
System.out.println();
System.out.println("=================================================================================================");
System.out.printf("%-14s %9d %10d %10d %9.1f %8.1f %8.1f %10.3f %9.3f\n", carType1, sMiles1, eMiles1, distance1, gals1, pricePerGallon1, cost1, mpg1, gpm1);
System.out.printf("%-14s %9d %10d %10d %9.1f %8.1f %8.1f %10.3f %9.3f\n", carType2, sMiles2, eMiles2, distance2, gals2, pricePerGallon2, cost2, mpg2, gpm2);
System.out.printf("%-14s %9d %10d %10d %9.1f %8.1f %8.1f %10.3f %9.3f\n", carType3, sMiles3, eMiles3, distance3, gals3, pricePerGallon3, cost3, mpg3, gpm3);
}
}
https://en.wikipedia.org/wiki/Array_data_type – khelwood
почему вы хотите, чтобы в первую очередь? Вы знаете, что, почему эти переменные частные? – nobalG
Почему каждый автомобиль имеет три из каждой переменной? Похоже, вы неправильно поняли механику объектной ориентации. – khelwood