[Java]Main in java
Salve, sto imparando il java da pochi giorni e scrivendo un programmino stupido mi sono accorto che se inserisco il main all' interno della classe SafeInput invece che inserirlo nella ReadingLine mi da un eccezione. Qualcuno saprebbe illuminarmi?
import java.io.*; public class SafeInput{ static boolean isaNumber(String s){ try{ Integer i= Integer.valueOf(s); return true; } catch (Exception e) { return false; } } } class ReadingLine{ public static String readLine() { String s = ""; try { InputStreamReader converter = new InputStreamReader(System.in); BufferedReader in = new BufferedReader(converter); s = in.readLine(); } catch (Exception e) { System.out.println("Error! Exception: "+e); } return s; } public static void main (String[] args) { boolean i; System.out.println("Inserisci un valore: "); String prova = ReadingLine.readLine(); i= SafeInput.isaNumber(prova)==true; if (i==true){ System.out.println("true"); } else System.out.println("false"); } }
Risposte
Il main dev'essere in una classe separata e dev'essere l'unico metodo di quella classe.
In sostanza, la classe ReadingLine e il metodo readLine spostali altrove.
Crea una classe a caso, in cui inserisci il main.
Comunque, nel caso tu non lo stia facendo, ti consiglio di usare l'IDE eclipse che ti segnala mentre stai scrivendo il codice i possibili errori ^^
In sostanza, la classe ReadingLine e il metodo readLine spostali altrove.
Crea una classe a caso, in cui inserisci il main.
Comunque, nel caso tu non lo stia facendo, ti consiglio di usare l'IDE eclipse che ti segnala mentre stai scrivendo il codice i possibili errori ^^
Le due classi sono nello stesso file? Come si chiama il file? Che genere di eccezione viene lanciata? Non ci hai fornito abbastanza informazioni per dare una risposta certa alla tua domanda. Molto probabilmente ha però ha che fare con il nome che hai dato al file e ad una non corretta comprensione delle conseguenze.
In ogni caso NON dare retta a quello che ha scritto nessuno.nobody. Il seguente codice è ad esempio perfettamente valido nonostante ci sia il main, un metodo statico e uno non statico.
In ogni caso NON dare retta a quello che ha scritto nessuno.nobody. Il seguente codice è ad esempio perfettamente valido nonostante ci sia il main, un metodo statico e uno non statico.
class Prova { static void statico() { System.out.println("Questa è una prova"); } void istanza() { System.out.println("Questa è un'altra prova"); } public static void main(String[] args) { statico(); Prova p = new Prova(); p.istanza(); } }