2016-11-21 63 views
-2
import java.util.Scanner; 
public class LKM { 
public static void main(String[] args){ 
    Scanner keyboard=new Scanner(System.in); 
    String startKm=keyboard.nextLine(); 
    String endKm=keyboard.nextLine(); 
    String liters=keyboard.nextLine(); 
} 
    public void Car (double startOdo, double endOdo, double liters){ 
    startKm=startOdo; 
    endKm=endOdo; 
    liters=liters; 
} 
public static void LKM(String args[]){ 
    calculateLKM red=new Car(1,20,10); 
    Car white=new Car(5,10,5); 
    System.out.println((red.endKm-red.startKm)/red.liters); 
    System.out.println((white.endKm-white.startKm)/white.liters); 
} 
} 

我必須定義一個類,它使用一個構造函數和一個方法來計算汽車的燃料消耗。我嘗試學習課堂和對象,但它不能很好地工作。我只需要一些提示。謝謝。燃料消耗等級java

+2

,因爲是應該被我倒是建議經歷basicly什麼[基本教程(https://docs.oracle.com/javase/tutorial/getStarted/index.html)和[java語言tuorials]( https://docs.oracle.com/javase/tutorial/java/index.html),特別是涉及[類和對象](https://docs.oracle.com/javase/tutorial/java/javaOO/的index.html) – SomeJavaGuy

+0

哪裏是'Car'類,我們可以不開車,你在正確的方向,如果我們不能看到整個代碼 –

+2

無車階級; Car構造函數的錯誤表示法;封裝不良;不可讀的代碼。 – duffymo

回答

0

我認爲你是令人困惑的方法和構造函數。 當你做「新車()」時,你試着調用汽車製造商。 所以要做到這一點,你需要一個類裏面有一個構造函數的「汽車」。

創建一個名爲「Car.java」的新文件,其內部插入此代碼:

public class Car { 
    public Car(double startOdo, double endOdo, double liters){ 
     this.startOdo = startOdo; 
     this.endOdo = endOdo; 
     this.liters = liters; 
    } 
} 

但是,如果你wan't做:

startKm=startOdo; 
endKm=endOdo; 
liters=liters; 

你需要你的車類中的字段。所以加startKm,endOdo,升在你的車類字段:

private double startOdo; 
private double endOdo; 
private double liters; 

然後添加一些getter和setter方法來訪問你的域:

public double getStartOdo() { 
     return startOdo; 
    } 
    public void setStartOdo(double startOdo) { 
     this.startOdo = startOdo; 
    } 
    public double getEndOdo() { 
     return endOdo; 
    } 
    public void setEndOdo(double endOdo) { 
     this.endOdo = endOdo; 
    } 
    public double getLiters() { 
     return liters; 
    } 
    public void setLiters(double liters) { 
     this.liters = liters; 
    } 

這會給你這樣的事情:

public class Car { 
    private double startOdo; 
    private double endOdo; 
    private double liters; 
    public double getStartOdo() { 
     return startOdo; 
    } 
    public void setStartOdo(double startOdo) { 
     this.startOdo = startOdo; 
    } 
    public double getEndOdo() { 
     return endOdo; 
    } 
    public void setEndOdo(double endOdo) { 
     this.endOdo = endOdo; 
    } 
    public double getLiters() { 
     return liters; 
    } 
    public void setLiters(double liters) { 
     this.liters = liters; 
    } 
    public Car(double startOdo, double endOdo, double liters){ 
     this.startOdo=startOdo; 
     this.endOdo=endOdo; 
     this.liters=liters; 
    } 
} 

最後,你將能夠在你的主文件中做你想做的。您只需調用「getStartOdo()」,「getEndOdo()」和「getLiters()」來檢索數據並使用System.out.println()方法顯示它。

哦,不要忘了打電話給你「LKM」的方法在你的主要方法,否則什麼也不會發生。

+0

非常感謝:D。我剛開始自己​​學習java。我的主要編程語言是C++。祝你有個愉快的日子 –

+0

這對你有幫助嗎?如果是這樣,請標記爲已解決:) – Morgan