Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269

    [JAVA] Errore metodo static

    codice:
    class Document {
    	
    	static int Version = 10;
    	int Chapters;
    
    	static void NewVersion() { 
    		Version++; 
    	}
    	
    	static void AddChapter() { 
    		Chapters++; 
            }
    
    	static void PrintVersion() {
    		System.out.println("Doc Version : "+Version);
    	}	
    	
    	public static void main(String[] args) {
    		Document d1 = new Document();
    		d1.PrintVersion();
    	}
    }
    Ragazzi questo codice mi dà errore di compilazione precisamente mi dice:

    non-static variable Chapters cannot be referenced from a static context

    Questo perchè stò cercando di usare una variabile d'istanza(vedi int Chapters) all'interno di un metodo static?
    Domanda: All'interno di un metodo static , non posso utilizzare variabili d'istanza?
    Con i sogni possiamo conoscere il futuro...

  2. #2
    E' come potresti utilizzare oggetti che non esistono ?
    Ricorda che i metodi/variabili di instanza hanno un ciclo di vita ben diverso da una variabile d'istanza, in poche parole tali "variabili" vengono instanziate senza bisogno di instanziare l'oggetto/classe in cui sono definite,quindi dato che le variabili di istanza vengono "valorizzate" al momento dell'istanziazione della classe esse non possono essere referenziate in contesti statici.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.