printReport()에서 calcWork()의 결과를 인쇄하고 싶지만 0.0이 계속 유지됩니다. work = this.totalWork;를 설정하는 데 문제가 있습니까?Java의 데이터 멤버 (필드)에 문제가 발생하여 프 라이팅되는 문제가 있습니까? 제대로 구현하는 방법?
public class CarnotEngine {
public double n = 10;
public double R = 4;
public double Th = 8;
public double Tc =2;
public double Va = 4;
public double Vb = 3;
public double totalWork;
public double highTemp, lowTemp;
public double efficientcy;
public CarnotEngine(double highTemp, double lowTemp){
this.highTemp = highTemp;
this.lowTemp = lowTemp;
}
public double calcWork(){
double Qh;
double work;
Qh = (n*R*highTemp)*log(Vb/Va);
work =(1-lowTemp/highTemp)*Qh;
work = this.totalWork;
return work;
}
public void printReport() {
System.out.println("Simulation Result for Carnot Engine");
System.out.println("work done" + totalWork);
public static void main(String[] args) {
CarnotEngine carengine = new CarnotEngine(500, 200);
carengine.calcWork();
carengine.calcEfficientcy();
carengine.printReport();
}
}
예, 그것이 내가 원하는 것입니다! –