JAVAアプリでゲームat GAMEDEVJAVAアプリでゲーム - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト94:名前は開発中のものです。 02/11/17 00:36 カンマって、「,の直前の物と同系の物が後ろにありますよ」 ってコンパイラに教えてるんじゃないの? で、カンマが無いと言う事はその後ろにはそれ以上インプリメントは無いと。 int x y; は駄目で、 int x,y; はOKみたいに。 95:名前は開発中のものです。 02/11/17 07:29 早い話、コンパイラがコードを読む際に そこに書かれている文字が何であるか、常に判断しておく必要があるんですよ。 予約語"implements"を発見したら、次に現れる文字はインターフェース名だろう と判断するわけです。 そしてさらに次の文字を読んだときに、","を発見したら、 コンパイラは「そういえばimplements文法ルールにカンマがあったら再度読み込むって書いてあったよなぁ」と 判断して、次に続く文字をインターフェース名と判断してimplementsで読み込むわけです。 コンパイラもプログラムですので、人間のようにアバウトに物事考えられないので、 まず文の始めには自分の知ってるキーワードがないとダメなんですよ。 今回の件であれば"implements Runnable"でimplements文が終わっちゃってるので、 次の処理に行っちゃって、次に現れた"KeyListener"なんて命令語知らねぇよ! ってエラーを出されることになる。 ……まぁ正確にはもうちょっと複雑な処理をしてますし、 本来はclass文法から説明しないとですが、 こんな感じでわかりますか? まぁコンパイラの構文解析ルールに文句つけても仕方ないので、そういうもんだと覚えましょうね。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch