If this program isn't for a course or isn't an exercise of some sort,
the following paragraph does not really apply to you.
I'd hate to discover I was cheating you out of learning for a course by
telling you the answer, but maybe this will help you learn the
fundamentals better.
I can't tell what you're asking in question 1, have you thought about
this thoroughly? Are you trying to run both with one command?
If so, you could possibly put in the first one, the one you want to run
from the command prompt, a line telling the other class to run.
That is, if your classes were something like
public class A
{
public static void main(String[] args)
{
System.out.println("Class A is running");
}
}
and an identical one with B instead of A, you could put instead for A:
public class A
{
public static void main(String[] args)
{
System.out.println("Class A is running");
B.main(args);
}
}
To see whether there was an input or not, you can do this: pretend your
code looks like the following, and has an additional
isPalindrome(String s) method.
public class B
{
public static void main(String[] args)
{
if(args == null)
System.out.println("No input!");
else
{
String wholestring = "";
for(int i = 0; i < args.length; i++)
wholestring += args[i];
if(isPalindrome(wholestring))
System.out.println("A palindrome");
else
System.out.prinltn("Not a palindrome");
}
}
//also there should be a boolean method
"isPalindrome(String)"
}
Lew - 31 Dec 2006 15:06 GMT
> public static void main(String[] args)
> {
> if(args == null)
More like
if ( args.length == 0 )
To the OP: You will get better help if your subject line is a bit more
specific than "Question:", for example, "How do I invoke one class out of
several?" (Which, incidentally, is not your problem, but "how to write a
main() method and invoke the class".)
(To which the answer is
1. write a main() method according to the basic rules of Java invocation.
2. declare the class "public" - up to one public class per class file, remember!
3. invoke the class with the "java" command.
)
Sun's Java tutorials and Bruce Eckel's book _Thinking in Java_ cover these
basics quite well. Study them. It is pretty much the first topic covered.
- Lew
Sub: Question:
1st point. A title of 'Question:' is not very helpful.
This post should ideally be split into two parts, the
first titled (something like) 'Run from command prompt'.
Note that title does not mention 'question' or 'problem'
or 'help', which is almost assumed, and the body of the
message can make clear, in any case.
I will deal with only the first, on this thread.
> 1)If I have two classes, how can i run it in the command prompt? (ex:
> java FileName) for only one class.
...
> To illustrate:
>
[quoted text clipped - 3 lines]
> class Main{
> }
(good illustration)
The code above shows two classes File and Main,
both with no attributes, and no *methods*, let alone
a method called main (that is of the right form to
be understood as *the* main(String[] args) method
that the JVM looks for, to start a class).
> c:\>javac File.java
> c:\>java File
The JVM understands that any class to be loaded
and run has a 'main', so ..
> Error: Exception in thread "main" java.lang.NoSuchMethodError:main
..here it reports it was unable to find that 'main' method.
Google for HelloWorld in Java and it should show
a valid form for the main.
As an aside, an excellent group for those beginning
Java, is comp.lang.java.help
HTH
Andrew T.