質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

2回答

3895閲覧

クラスにmain(String[])メソッドが見つかりません :InfoWeatherと書かれていてどうすればいいですか?

edwardingkl

総合スコア4

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2020/05/14 05:24

class InfoWeather {
static int month;
static int day;
static String sky;

}
class DateInfo{
public static void main(String args[]){
InfoWeather.month = 8;
InfoWeather.day = 10;
InfoWeather.sky = "雨";
System.out.println(InfoWeather.month + "月" + InfoWeather.day + "日 " + InfoWeather.sky);
}
}
とこのように入れて実行したのですが、ターミナルにクラスにmain(String[])メソッドが見つかりません :InfoWeatherと書かれていてどこを直せばいいのかわからないので返信お願いします!

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

エラーを見た感じ、ソースファイルをコンパイルせずに実行していませんか?
>java DateInfo.javaというようにコンパイルせずに実行すると、最初に書かれたクラスに対してmain()メソッドを呼び出そうとします。
そのため、DateInfoクラスを呼び出そうとしてもmain()メソッドの無いInfoWeatherクラスが呼び出されて、main()メソッドが見つかりませんというエラーが表示されます。

コンパイルしてから実行するのをお勧めしますが、直接実行したいのであれば実行したいクラスをファイルの先頭に移しましょう。

Java

1class DateInfo { 2 public static void main(String args[]) { 3 InfoWeather.month = 8; 4 InfoWeather.day = 10; 5 InfoWeather.sky = "雨"; 6 System.out.println(InfoWeather.month + "月" + InfoWeather.day + "日 " + InfoWeather.sky); 7 } 8} 9 10class InfoWeather { 11 static int month; 12 static int day; 13 static String sky; 14 15} 16

投稿2020/05/14 06:43

編集2020/05/14 08:21
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

edwardingkl

2020/05/14 07:40

解決しました! ご協力ありがとうございました!
退会済みユーザー

退会済みユーザー

2020/05/14 08:19

問題が解決したなら一番参考になった回答をベストアンサーにするか、自己解決したのであれば以下の手順に従って質問を解決済みにしてください。 https://teratail.com/help#resolve-myself あと1つ前の質問は間違えて投稿したのであれば削除リクエストをして削除してください。 https://teratail.com/help#delete-question
guest

0

エラーメッセージのとおり、InfoWeatherクラスにはmainメソッドがありません。

ファイル名をDateInfo.javaに変えて、DateInfomainをロード時に読ませるようにしてみましょう。

(なお、ごく簡単な例や、クラスをネストする場合を除けば、Javaでは1ファイルに1つのクラスしか書くべきではありません)

投稿2020/05/14 05:46

maisumakun

総合スコア146018

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問