Question

if you have a class with a static import to java.lang.Integer and my class also has a static method parseInt(String) then which method will the call parseInt("12345") point to?

Thanks in Advance!

Était-ce utile?

La solution

If you're inside your own class it will call your method.
If you're outside your class (and import both classes) you must specify which class to use.

Prove: http://java.sun.com/docs/books/jls/download/langspec-3.0.pdf $8 and $6.3 (see comments)

Autres conseils

Try this:

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;
    }
}

the result:

str
123

the method in you class is executed first.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top