risposta

6

Se sei all'interno della tua classe chiamerà il il tuo metodo.
Se si è fuori dalla classe (e si importano entrambe le classi) è necessario specificare quale classe utilizzare.

Dimostrare: http://java.sun.com/docs/books/jls/download/langspec-3.0.pdf $ 8 e $ 6.3 (vedi commenti)

+0

puoi mostrare un riferimento che indica che è garantito dallo standard? Potrebbe essere il compilatore dipendente ... – amit

+0

in attesa di sm1 per rispondere a amit – MozenRath

+2

da Java Language Specification $ 8: L'ambito (§6.3) di un membro (§8.2) è l'intero corpo della dichiarazione della classe a cui appartiene appartiene. | Da $ 6.3: L'ambito di una dichiarazione è la regione del programma all'interno della quale l'entità dichiarata dalla dichiarazione può essere riferita usando un nome semplice (a condizione che sia visibile (§6.3.1)). – Paranaix

5

Prova questa:

import static java.lang.Integer.parseInt; 

public class Test { 
    public static void main(String[] args) { 
     System.out.println(parseInt("12345")); 
    } 

    private static int parseInt(String str) { 
     System.out.println("str"); 
     return 123; 
    } 
} 

il risultato:

str 
123 

il metodo in voi classe viene eseguito per primo.

+2

puoi mostrare un riferimento che indica che è garantito dallo standard? Potrebbe essere il compilatore dipendente ... – amit

+1

+1 Mi piace la dimostrazione. – Bohemian

Problemi correlati