Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can a main method in Java return something?

Tags:

java

I went through an interview recently and they ask me two questions in core Java.

Q 1.

Can we write a java class with:

public static int main(String[] args){      System.out.println("Hello"); 

I answered: No. The compiler won't compile it as it is expecting the return type of main to be int, though we can overload it.

Q 2: The next question I was unable to answer.

Write a program so that your Java main method could return something.

I.e. how can you make public static void main([] args) to return something?

Can any body help me to answer this?

like image 967
vibhas Avatar asked Aug 20 '11 06:08

vibhas


People also ask

Can main method return items?

Java's main method is built to accept only void as return type and void method has no return value. Without having declared main method static , your program will successfully compile but won't execute and report error at run time. ... The keyword void simply tells the compiler that main does not return a value.

Can main return int in java?

Answer: Explanation: True, The default return type for a function is int.

How do I return a main item in java?

You declare a method's return type in its method declaration. Within the body of the method, you use the return statement to return the value. Any method declared void doesn't return a value.

How do you return a method in main method?

Just cancel first call for getMinutes() method in your main , each time you call or try to get return value of a method . this method will execute all codes inside it before you got its return value.


1 Answers

Q 1. Can we write a java class with : public static int main(String[] args){

Yes, you can but you can't run that Java class.

Example class:

class MainTest {          public static int main(String[] args) {                 return 1;         } } 

You will receive an error message when trying to run it:

Error: Main method must return a value of type void in class MainTest, please  define the main method as:    public static void main(String[] args) 

Q 2: Next question I unable to answer. He asked write a program so that your java main method could return something.

You can use System#exit(int) to quit your program with a specific exit code which can be interpreted by the operating system.

like image 67
joschi Avatar answered Oct 22 '22 02:10

joschi