今日はかなりトリッキーな割り当てがあり、問題を見つけ出すのに苦労しています。私はエラーを続けている: "非静的変数名は、静的コンテキストから参照することはできません"。私の推測では、私のコードでどこかで作っている間違いがあり、私はいくつかの助けを求めています。事前に助けてください!Java宿題での非静的変数エラー
import java.util.Scanner;
public class IfPractice
{
Scanner name = new Scanner(System.in);
String name = scan.nextLine();
int space = name.indexOf(" ");
String firstName = name.substring(0, space);
private String nickname;
private String ageResponse;
int age = scan.nextInt();
public static void main (String[] args)
{
System.out.print("Enter your full name: ");
System.out.print("Hello," + name +"!");
if (firstname.equals(("James") || ("james"))) {
this.nickname = "Jim";
}
else if(firstname.equals(("Robert") || ("robert"))) {
this.nickname = "Bobby";
}
else if(firstname.equals(("Ashwani") || ("ashwani"))) {
this.nickname = "Ash";
}
else {
this.nickname = "Buddy";
}
System.out.println("I think I will call you" + this.nickname);
System.out.println("How old are you? ");
if (age <= 18) {
this.age = "You are a child";
}
else if ((age >= 18) && (age <= 21)) {
this.age = "You are a child";
}
else if ((age >= 21) && (age <= 65)) {
this.age = "You can vote, but you can not drink";
}
else {
this.age = "You can get Social Security";
}
System.out.println(ageResponse);
}
}
エラーメッセージにはすべて記載されています。 'firstname'はインスタンス変数で、静的関数main()からアクセスしようとしています。 – dave