
以下のプログラムで下記にのせる実行結果の様に動くソースコードの元を載せています。
以下のソースコードを拡張させて、プログラムを動く様にしたいのですが、kadai12の部分のインスタンス生成の部分が、型 インスタンスが生成できませんというエラーが出てしまいます。
どの様にして、解決すれば良いでしょうか?
//kadai12パッケージ:Kadai12.java
//修正可能箇所ここから
//修正可能箇所ここまで
//以下、Kadai12クラスは修正しないこと
public class Kadai12 {
public static void main(String[] args) {
Polygon[] p = new Polygon[3];
p[0] = new Triangle(10);
p[1] = new Triangle(7);
p[2] = new Triangle(5);
for(int i=0;i<3;i++) {
p[i].showAll();
}
}
}
//ruleパッケージ:Calculation.java
//修正禁止
package rule;
public interface Calculation {
void calcArea();
void calcPerimeter();
}
//shapeパッケージ:Polygon.java
//修正禁止
package shape;
public abstract class Polygon {
private int line;
public Polygon() {
System.out.println("図形を生成します");
}
public Polygon(int line) {
this();
this.setLine(line);
}
public int getLine() {
return line;
}
public void setLine(int line) {
if(0<line && line<=10) this.line = line;
else this.line = 5;
}
public void showAll() {
System.out.println("指定された図形の面積、外周、描写を行います");
}
public abstract void drow();
}
//shapeパッケージ:Triangle.java
//修正自由
public class Triangle{
}

No.5ベストアンサー
- 回答日時:
>Polygonを継承する際に、abstractにしないとエラーが出たため、
>abstract型にしました
それは実装してないメソッドが残ってるから。
全部実装して具象クラスにしないと使えないです。
No.3
- 回答日時:
これは酷いね。
①TriangleはなんでPolygonを継承しないの?
②Triangleの、辺の長さを指定するコンストラクタはなんで無いの?
③CalculationはTriangleで実装しないの?
②がTriangleのインスタンスの生成を出来なくしてるし
①はTriangleのインスタンスの配列への代入を出来なくしてます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
インスタンス参照でアクセスで...
-
オブジェクト参照がオブジェク...
-
フォームのCheck boxとOLEObjec...
-
JSPでの表示
-
プログラミング、シューティン...
-
「インスタンス」の意味をわか...
-
変数の参照でエラーが出てしま...
-
中学のクラス数
-
「タイプ初期化子が例外をスロ...
-
0歳児の指しゃぶりに関して
-
河合塾
-
VBスクリプトでテキストファイ...
-
javascriptからjavaを呼び出したい
-
エクセルVBAで、条件に一致する...
-
進学校通ってたんですけど、眼...
-
canvasで表示されてる画像を1...
-
河合塾のクラス分けについて
-
多人数のじゃんけんプログラム
-
ヒグマを撃退
-
C# 「データが失なわれる可能性...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
インスタンス参照でアクセスで...
-
変数名の付け方
-
private static という変数の修飾
-
C#において、同じインスタンス...
-
複数の変数を宣言する時、同時...
-
オブジェクト参照がオブジェク...
-
VB.NET getとsetの概念がわかり...
-
フォームの存在をチェックする方法
-
変数の参照でエラーが出てしま...
-
C# インスタンスの破棄
-
生成したインスタンスを削除す...
-
文字列を日付に変換でParseExce...
-
次の日本語の意味を教えて下さい
-
C#「オブジェクト参照が必要で...
-
SQLを連続発行する時の正しい(?...
-
「インスタンス」の意味をわか...
-
[Visual C#] 優先される処理に...
-
newしないインスタンス?実体化...
-
C#の構造体の開放のしかた
-
javaのクラスの作り方、エラー...
おすすめ情報
一様、プログラムが動くように、importしたり、また、Triangleのプログラムで引数に合うようにインスタンスを作ったりしたのですが、Kadai12を実行したら型 Triangleのインスタンスが生成できないというエラーが出ました。
Kadai12は以下の様に修正しています。
package Kadai12;
import shape.Polygon;
import shape.Triangle;
public class Kadai12 {
public static void main(String[] args) {
Polygon[] p = new Polygon[3];
p[0] = new Triangle(10);
p[1] = new Triangle(7);
p[2] = new Triangle(5);
for(int i=0;i<3;i++) {
p[i].showAll();
}
}
}
Triangkeのプログラムに関しては以下の様に修正しています。
Triangleに関しては以下の様に修正しています。
package shape;
import rule.Calculation;
import shape.Polygon;
public abstract class Triangle extends Polygon implements Calculation{
public Triangle(int i) {
}
}
Polygonを継承する際に、abstractにしないとエラーが出たため、abstract型にしました