fork download
  1.  
  2.  
  3. public class kadai {
  4.  
  5. public static class AAA extends Turtle {
  6.  
  7. public void drawStar(int n) {
  8.  
  9. for (int i = 0; i < 5; i++) {
  10. fd(n);
  11. rt(144);
  12. }
  13. }
  14. }
  15.  
  16.  
  17. public static void main(String[] args) {
  18.  
  19. Turtle m;
  20. TurtleFrame f = new TurtleFrame();
  21.  
  22. if (args.length > 0) {
  23. m = new AAA();
  24. } else {
  25. m = new Turtle();
  26. }
  27. f.add(m);
  28.  
  29. // 線の長さ
  30. final int length = 100;
  31.  
  32. // m に格納されたオブジェクトがAAAオブジェクトかチェック
  33. //<注>実行時パラメータの数で判断しないこと<注>
  34. if (m instanceof AAA) {
  35.  
  36. // 画面の左まで行って、右向きにする
  37. m.up();
  38. m.lt(90);
  39. m.fd(m.getX() - 20);
  40. m.rt(180);
  41. m.down();
  42.  
  43. //AAAオブジェクトが生成された場合は、実行時パラメータの値分
  44. // 星の図形を描画(2を指定)
  45. int stars = Integer.parseInt(args[0]);
  46. for (int i = 0; i < stars; i ++) {
  47.  
  48. //drawStarメソッド呼出し+(図が重複しないような距離分)移動
  49. ((AAA)m).drawStar(length);
  50. m.up();
  51. m.moveTo(m.getX() + length + 20, m.getY());
  52. m.down();
  53. }
  54.  
  55. } else {
  56.  
  57. // ☆半分左に行って、右向きにする
  58. m.up();
  59. m.lt(90);
  60. m.fd(length / 2);
  61. m.rt(180);
  62. m.down();
  63.  
  64. //m がTurtleオブジェクトの場合、星を1つ描画
  65. //fdメソッドrt メソッドの呼出し
  66. for (int i = 0; i < 5; i++) {
  67. m.fd(length);
  68. m.rt(144);
  69. }
  70. }
  71. }
  72. }
  73.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:3: error: class kadai is public, should be declared in a file named kadai.java
public class kadai {
       ^
Main.java:5: error: cannot find symbol
	public static class AAA extends Turtle {
	                                ^
  symbol:   class Turtle
  location: class kadai
Main.java:10: error: cannot find symbol
				fd(n);
				^
  symbol:   method fd(int)
  location: class AAA
Main.java:11: error: cannot find symbol
				rt(144);
				^
  symbol:   method rt(int)
  location: class AAA
Main.java:19: error: cannot find symbol
		Turtle m;
		^
  symbol:   class Turtle
  location: class kadai
Main.java:20: error: cannot find symbol
		TurtleFrame f = new TurtleFrame();
		^
  symbol:   class TurtleFrame
  location: class kadai
Main.java:20: error: cannot find symbol
		TurtleFrame f = new TurtleFrame();
		                    ^
  symbol:   class TurtleFrame
  location: class kadai
Main.java:25: error: cannot find symbol
			m = new Turtle();
			        ^
  symbol:   class Turtle
  location: class kadai
8 errors
stdout
Standard output is empty