0

Ok really stupid question, but I have some methods defined in a file called x.java, which is in the default folder, and in the same folder, I have a file called z.java. I want to use the functions defined in x in z. When I try, it tells me the function is undefined. I tried to put import x.java; but it says x.java cannot be resolved. What am I missing here?

3
  • 2
    Check your classpath. Does it include the current directory? i.e the "." Commented Oct 6, 2010 at 3:25
  • I was able to successfully use x class's method in z.java without any import. My method in x.java has default access and I have created object for x class and called the method. Probably class path problem as Suresh Kumar mentioned. Commented Oct 6, 2010 at 4:48
  • issue this command set classpath=.;%classpath% in windows Commented Oct 6, 2010 at 4:48

3 Answers 3

4

Based on your description, I'd bet there's a good chance both of your source files defined classes in the default package (i.e., you don't explicitly define a package for them).

You can't import a class that's in the default package.

Recommend you put your class x in a named package (e.g., foo.bar.x), then you can import it:

import foo.bar.x;
Sign up to request clarification or add additional context in comments.

1 Comment

I don't know why he accepted this answer (though it is very good answer), it probably problem with classpath.
1

if you have a file called x.java which compiles to x.class, you don't import by doing:

import x.java;

but you do

import x;

Comments

1

I think, if the two classes are in same package then there is no need to import the class as that class can be used without any import and without any error.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.