• ベストアンサー

ソースコードのmain()がないんです

「セールスマン巡回問題」のソースコードをhttp://www.infonet.co.jp/ueyama/ip/java_source.html で見つけました。それは良かったのですが、肝心のmain()が見つかりません。 よって実行ができません。どのようにmain()を書けばよいのでしょうか? 適当に↓のようにやってみましたが動きません。Appletを動かさないといけないようですがどうやれば…。 public static void main(String[] args) { salesman salesman = new salesman(); // (new salesman()).init(); (new salesman()).calc_len(); } ちなみにここのhtmlではソースコードは途中で途切れていますが 下のURLでダウンロードソフトを使って落とせば完全なのが得られるはずです。(って激しく面倒ですね…_| ̄|○) http://www.infonet.co.jp/ueyama/ip/java/salesman.java よろしくお願いします。m(__)m

  • kicker
  • お礼率89% (235/263)
  • Java
  • 回答数3
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • asahina02
  • ベストアンサー率47% (95/202)
回答No.2

コンソールを出してやるとどういう理由によって読み込みに失敗したか分かると思います。 まずはその理由が分からないと回答も検討はずれになりかねませんので・・・ まぁ可能性としてはやはりパス関連の問題になるとは思いますが。 一応私の手元の場合、特に何もせず(多分・・)動きましたよ。 でもソースとか読んでないのでなんのアプレットなんだか分かりませんorz

kicker
質問者

お礼

返事遅くなりました。解決しました。 ありがとうございました。

その他の回答 (2)

  • kacchann
  • ベストアンサー率58% (347/594)
回答No.3

おおっと。

参考URL:
http://www.infonet.co.jp/ueyama/ip/software/salesman.html
kicker
質問者

お礼

いやー、アプレットを動かしたいというだけではなく ソースコードがどう動いているのかが知りたかったんです。 でもポイント差し上げます。 ありがとうございました。

  • asahina02
  • ベストアンサー率47% (95/202)
回答No.1

ソースを全部読んだ訳ではないので基本だけ。 このソースはアプレットなのでmain()は必要ありません。 そのままコンパイルしてHTMLに  <applet code="salesman.class">  </applet> と書けば基本的にはOKです。 ただ、当然他のクラスも使うと思うので、 その場合JARファイルにまとめたり、クラスパスを通したりとする必要があるかと思います。

kicker
質問者

補足

ありがとうございます。 あ、main()は必要ないんですね、お恥ずかしい…。 で、やってみたのですが、実行できません。 間違っていたら訂正をお願いします。 VC++の「新規ファイル…」で同じディレクトリにHTMLファイルを作ってそこに  <applet code="salesman.class">  </applet> と書きました。それでそのHTMLファイルをクリックしたんですが Javaアプレットの読み込みに失敗しました…と出ます。 これはやっぱりパスを通したりする必要がある、ということでしょうか?

関連するQ&A

  • main()メソッドが無いコード

    最近、Javaアプレット等を勉強してるのですが 今まではmain()メソッドの中に処理を書いて来たのですが、 下記の様なコードにはmain()メソッドが有りません。 import java.applet.Applet; import java.awt.Button; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class Sample6 extends Applet implements ActionListener { Button bt; public void init() { bt = new Button("開始"); add(bt); bt.addActionListener(this); } public void actionPerformed(ActionEvent ae) { bt.setLabel("中止"); } } これはどう言う事なんでしょうか?

    • ベストアンサー
    • Java
  • mainクラスのpublicの意味を教えて下さい

     お早う御座います、JAVA初心者です、宜しくお願いします。  main クラスの public をコメントアウトしてもエラーもなく走ります。  これは、「public static void main(String[] args)」を持っているクラスを自動的に「main クラス」と判断しているということでしょうか。 ============================================================ class Sub { void disp() { System.out.println(" a "); } } /*public*/ class Main { public static void main(String[] args) { Sub s = new Sub(); s.disp(); } }

    • ベストアンサー
    • Java
  • ソースコードの流れについて

    下記ソースコードの流れを詳しく解説していただけませんか。表示結果が理解できません。 class Th extends Thread{ public void run(){ for(int i = 0; i < 2; i++)System.out.print(" "+ Main4_1_49.count + i); } } public class Main4_1_49{ static int count = 0; public static void main(String[] args){ Th[] tr = new Th[6]; for(int i = 0; i < 5; i++){ count++; tr[i] = new Th(); tr[i].setPriority(i * 2 + 1 ); tr[i].start(); } } }

  • javaのmainメソッド

    public static void main(String args[]) と public static void main(String[] args) の違いを説明してくれないですか? 小さい質問ですいませんが、回答よろしくおねがいします!

  • public static void main(String args

    public static void main(String args[]) { と public static void main(String[] args) { は何が違います?

    • ベストアンサー
    • Java
  • javaのmainの引数はなぜstring[]?

    Java初心者です。 基礎的なことなのですが、質問させてください。 javaのmainメソッド定義の public static void main (String[] args) について、String[] argsの部分がjavaコマンドで実行する際に与える引数であることは 理解できました。しかし、なぜStringの配列なのかが理解できません。 実行時の引数であれば、intやdoubleも使い道があるようにも感じるので、 プログラマの好きに定義できた方が便利な気がしますし、実行時に引数を与えないなら public static void main () としてしまったほうがわかりやすいとも感じてしまいます。 実はコンパイル時や実行時に裏の見えない部分でStringの配列を使っているとか、 何か理由があるのでしょうか? mainの定義は main (String[] args)と暗記でもいいのですが、 気になったので知りたく、質問させてください。

    • ベストアンサー
    • Java
  • getDocumentBase() でエラーがでます

    getDocumentBase() でエラーがでます 下のように書いているのですが getDocumentBase() でエラーがでて困っています 他のところは動いてて それに追加しました 何が原因なのでしょうか? import java.awt.*; import java.awt.event.*; import java.applet.Applet; public class window { public static void main( String[] args ) { AppFrame f = new AppFrame(); image i = new image(); i.init(); f.setSize( 200, 200 ); f.addWindowListener( new WindowAdapter() { public void windowClosing( WindowEvent e) { System.exit(0); } } ); // f.show(); f.setVisible( true ); } } class image extends Applet { Image image; image() { } public void init() { image = getImage( getDocumentBase(), "image.jpg" ); } ...

  • 以下のコードのどこが問題なのでしょうか?

    java初心者です。よろしくお願いいたします。以下のコードはどこに問題があるのでしょうか?よろしくお願いいたします。 public class Sample2 { public static void main(String[] args1,String[] args2) { MyObject object = new MyObject(); object.setName("mikel" , "jun"); String s = object.getName(); System.out.println(s); } } class MyObject { String name; public void setName(String str1,String str2) { name = "str1"+"str2"; } public String getName() { return name; } }

    • ベストアンサー
    • Java
  • Java アルゴリズム web上のソースコードで

    こんにちは。 趣味でプログラミングをしているものです。 定番のアルゴリズムについてみているうちに、下記のような サイトを見つけたのですが、 http://www-ui.is.s.u-tokyo.ac.jp/~takeo/book/algorithm/index.html まず、上記のサイトから ( パッケージ全体のダウンロードはこちら ) のリンクから、 お手数ですが、ソースコードをダウンロードしていただきたいのですが、 「 complete 」のフォルダーの 「 dijkstra 」のMain.javaを見ていて、 いくつかわからないことがありましたので、質問させていただきます。 (1) 194行めからのメソッド set_random_costs() 内において、 最後のほうで、repaint() をコールしていますが、 これは、どのクラスの repaint() なのでしょうか。 (2) コマンドプロンプトから起動すると 「 Appletを継承したMainのインスタンス 」を「JFrameクラスのインスタンス」にaddして 表示されるようでしたので、 コマンドプロンプトから 「java Main」としてみたのですが、 Exception in thread "main" java.lang.NullPointerException at Main.get_graph_image( Main.java:139 ) at Main.set_random_costs( Main.java:211 ) at Main.init( Main.java:76 ) at Main.main( Main.java:25 ) というエラー表示がされてしまいました。 ソースコードをどのようにか、修正しなければならないのでしょうか? 以上、初歩的な質問かもしれませんが、 どなたか教えていただけないでしょうか? よろしくお願いします。

    • ベストアンサー
    • Java
  • コンパイルエラー(匿名クラス)

    下記ソースがコンパイルエラーを起こしてどうしたらよいか分かりません。 下記エラー参照 Main.java:2: 型の開始が不正です。 new String(){ ^ Main.java:6: <identifier> がありません。 };ん。 (下記ソース) class NormalClass{ new String(){ public String ToString(int n){ return n + ""; } }; } class Main{ public static void main(String args[]){ NormalClass test = new NormalClass(); System.out.println(test.ToString(10)); } }

    • ベストアンサー
    • Java