Ich bekomme ständig diesen Fehler beim Versuch, dieses Programm zu kompilieren - ich weiß, dass statische Variablen klassenweite Variablen sind, und nicht in nicht statische Methoden oder Variablen gebracht werden können. Wie ich in anderen Fragen von Java-Anfängern gesehen habe, könnte es "direkt in deinem Gesicht" sein. Jede Hilfe wird geschätzt.Fehler: Unerlaubter Anfang des Ausdrucks
import java.util.Scanner;
public class Sims
{
public static void main(String[] args)
{
//Class constructor
System.out.println("Enter a last name");
static Scanner name = new Scanner(System.in);
static String names1 = name.nextLine();//reading the input
static String last_name = names1;
intro();
}
public static void intro()
{
System.out.println("I'm an instance! " + last_name);
}
}
Lokale Variablen können nicht statisch sein. Entferne das Schlüsselwort von 'name',' names1' und 'last_name'. –
'static' kann nur mit Klassenmitgliedern verwendet werden, nicht mit lokalen Variablen. Lassen Sie 'Intro'-Methode String-Parameter akzeptieren und' Last_name' als Argument übergeben. – Pshemo
Auch in Ihrer 'intro' Methode versuchen Sie, von der' main' Methode auf die lokale Variable zuzugreifen (sobald Sie die statischen Deklarationen wie von anderen Kommentaren vorgeschlagen entfernen) – Stefan