- - PR -
継承の方法って?
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2001-11-25 02:41
かなり初歩的な質問で恐縮です。 先ほど自前で作成した(JavaApplicationの)SuperClassを SubClassに継承(extends)させようとしたのですがCompile Errorになってしまいました。 Servletで「HttpServlet」などの継承は問題なく出来るのに 自前のClassはなぜ継承できないのでしょうか ちなみに開発環境は J2SDK ver1.3.1 Free Editor(MKEditor) で開発Softは使わずに直接javacでCompileしております。 [ メッセージ編集済み 編集者: POLON 編集日時 2001-11-25 03:04 ] |
|
投稿日時: 2001-11-25 20:25
コンパイルエラーというのは、具体的にどういったエラーとなるのでしょうか?
単純に考えられるのは、SuperClass にクラスパスが通っていないとか考えられそうですが、エラーのメッセージがかかれていないと何とも言いようがありませんね。 |
|
投稿日時: 2001-11-26 13:13
TO ふうたさん。
返事が遅くなりまして申し訳ありませんでした。 現象(というか状況)と言うのは DBControl.classというSubClassからDBConnection.class(SuperClass)を 呼び出そうとしております。 --Image-- [DBConnection] ↓ [DBControl] で、実際のDBControlのSorceには ---------------------------------- import java.io.*; public class DBControl extends DBConnection { public static void main( String[ ] args ) { ・ ・ ・ }} ---------------------------------- と記述し、コマンドは「javac -deprecation DBControl.java」で Compileしております。 そしてError内容は ---------------------------------- Path名:3:シンボルを解釈処理できません。 シンボル:クラスDBConnection 位置 :DBControlのクラス public class DBControl extends DBConnection { -------------------------------^ と出力されます。 やはり私の書き方が間違いなのでしょうか [ メッセージ編集済み 編集者: POLON 編集日時 2001-11-26 13:13 ] [ メッセージ編集済み 編集者: POLON 編集日時 2001-11-26 13:14 ] |
|
投稿日時: 2001-11-26 13:33
DBConnection.class と DBControl.java は、同じディレクトリに配置しているのでしょうか?
もし、そうであればクラスパスに"."(ピリオド)が含まれているか確認してみてください。 もしくは、DBConnection.java と DBControl.java が同じディレクトリにあるのであれば、 javac -deprecation *.java でもいけそうですが、SuperClassにクラスパスを通すのが 普通でしょう。 |
|
投稿日時: 2001-11-26 14:23
TO ふうたさん。
早速の回答誠に有難う御座います。 再度回答に対しての質問で恐縮ですが DBConnection.classとDBControl.classは同Dirに配置しております。 私は現在Win98seで開発しておりますので >SuperClassにClassPathを通す というのはAutoexec.batにClassPathを記述するという事でしょうか? 大変お手数を掛けまして申し訳御座いません。 |
|
投稿日時: 2001-11-26 16:34
パッケージにしていなければ、両方の .class のある場所で
javac -cp . *.java すればいいでしょう。 |
|
投稿日時: 2001-11-26 17:36
すみません。
いつも使用しているEditor(MKEditor)専用でCompileを 容易にしてくれるbath Fileがありまして、 それを普段利用しているのですが ちょっと今回このbathでのCompileを止めて直接MS-DOS上から Compile(「javac -deprecation DBControl.java」)を行って みたところ、何の問題もなくCompileが行えました ですので無事にCompileが出来ました。 お騒がせ致しまして大変申し訳御座いませんでした m(_ _)m ですが折角お答え頂いた事なのでご迷惑とは思いますが いま一度質問をさせてください。 [TO しょむさん] 毎回、大変お世話になっております。自力で調べれば 良いのですがあいにく(Internet含む)手元に資料が 見つからない為、お手数とは思いますが質問させてください。 「javac -cp . *.java」とは「javac -cp . DBControl.java」で 良いのでしょうか? [TO ふうたさん] この度はお騒がせ致しまして大変申し訳御座いませんでした。 ただ私が未熟なため「SuperClassにクラスパスを通す」がいまいち 解りません。 他の方にもこのスレッドが役に立てばと思いますので ご迷惑でなければお教え頂けませんでしょうか。 宜しくお願い致します。 |
|
投稿日時: 2001-11-26 18:32
コマンドプロンプトから、javac をいちいち起動するのは面倒だと思います。
javac だけでなく、javadoc も同様ですね。 これを機会に、Ant ( Apache Jakarta Project ) を利用してみるのはいかがでしょうか。 Ant は、Java製のMakeツールです。 もちろん、MKEditor依存の製品ではありません。 |
