さて、私はここで本当にイライラしています。私は今学期、プログラミング入門クラスの第 2 部を受講しています。前学期は C++ をやっていましたが、今は Java をやっています。私の意見では、私たちはすべてにかなり早く飛び込みました。これは、C++ の知識を Java に適用することが期待されているためだと思います。これは一理あると思います。理解しようとしてGoogleなどを精査していたので、今はただ怒っています。
RectangleDemo と Rectangle の 2 つのファイル/クラスがあります。RectangleDemo がメインです。面積と周長を計算できるコードを書くように求められました。私の問題はこれです。新しいコンストラクターを追加すると、元のクラスと「RectangleDemo」内のそのオブジェクトが機能しなくなります。さらに、コンパイラは新しいコンストラクタのシンボルを見つけることができません。
コードはこちら...
public class RectangleDemo {
public static void main(String[] args) {
Rectangle myRect = new Rectangle();
double theArea;
double thePerimeter;
myRect.setLength(25);
myRect.setWidth(5);
theArea = myRect.area();
thePerimeter = myRect.perim();
System.out.println("My rectangle has area " + theArea);
System.out.println("Rectangle Perimiter " + thePerimeter);
Rectangle newRect = new Rectangle(10, 20);
}
}
public class Rectangle {
private double width, length;
private double len, wid;
public void setWidth(double w) {
width = w;
}
public void setLength(double ln) {
length = ln;
}
public double getWidth() {
return width;
}
public double getLength() {
return length;
}
public double area() {
double a;
a = length * width;
return a;
}
public double perim() {
double pr;
pr = (length * 2) + (width * 2);
return pr;
}
public Rectangle(double len, double wid) {
}
}
コード ブロックについては申し訳ありませんが、インデントは Safari では少し奇妙です。
「Rectangle」クラスはエラーなしでコンパイルされます。
しかし、「RectangleDemo」クラスのコンパイラ エラーはこれです。
----jGRASP exec: javac -g RectangleDemo.java
RectangleDemo.java:5: cannot find symbol
symbol : constructor Rectangle()
location: class Rectangle
Rectangle myRect = new Rectangle ();
OSX 10.7.5 を実行している 07 Macbook でコンパイルしています
プログラムにエラーなしで見つけることさえできないため、コンストラクターのコードにはまだ何も追加していません。
私が行ってきたすべての読書は、JAVA についてさらに学ぶのに役立ちましたが、私はこのプログラムで終わりです。さらに悪いことに、それは私の愚かで小さなタイプミスに違いありません。