Updated: July 23, 2025

Java is one of the most popular and versatile programming languages in the world. Whether you want to develop web applications, mobile apps, or desktop software, Java offers a solid foundation with its portability, robustness, and extensive libraries. For beginners, creating a simple console application is often the first step towards mastering Java programming.

In this article, we will guide you through the process of writing your first Java console application. We will cover everything from setting up your development environment to writing, compiling, and running your code. By the end, you will have a fully functional Java program that interacts with users through the console.

What Is a Java Console Application?

A console application is a program that runs in a text-based command-line interface (CLI) rather than using graphical user interfaces (GUIs). Console apps allow users to input data via the keyboard and view output through the terminal or command prompt window.

Java console applications are excellent for beginners because they focus on fundamental programming concepts without the complexity of graphical elements. They are also widely used for quick utilities, scripting tasks, and learning purposes.

Prerequisites

Before you begin writing your first Java console application, ensure you have the following:

  • Java Development Kit (JDK) installed: The JDK contains tools necessary to compile and run Java programs.
  • A text editor or Integrated Development Environment (IDE): Examples include Visual Studio Code, IntelliJ IDEA, Eclipse, or even simple editors like Notepad++.
  • Basic understanding of programming concepts: Familiarity with variables, control structures (like loops and conditionals), and functions/methods will be helpful.

Step 1: Install JDK

First, download and install the latest JDK from Oracle or OpenJDK distributions:

Follow the installation instructions specific to your operating system (Windows, macOS, Linux).

To verify your installation:

  1. Open a terminal or command prompt.
  2. Type java -version and press Enter.
  3. You should see information about your installed Java version.

If this command isn’t recognized, check that your system’s PATH environment variable includes the path to the JDK’s bin folder.

Step 2: Set Up Your Development Environment

While you can write Java programs in any text editor and compile them via the terminal, using an IDE can simplify development with features like syntax highlighting, autocomplete, debugging tools, and project management.

Some popular options:

  • IntelliJ IDEA Community Edition – Free and powerful IDE.
  • Eclipse – Widely used open-source IDE.
  • Visual Studio Code – Lightweight editor with Java extensions.
  • NetBeans – Another full-featured IDE maintained by Apache.

Choose one based on your preferences and install it before continuing.

Step 3: Create Your First Java File

Java programs are written inside files with a .java extension. Each file typically contains one public class that matches the filename.

Let’s start by creating a simple “Hello World” program.

  1. Open your IDE or text editor.
  2. Create a new file named HelloWorld.java.
  3. Enter the following code:
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

Explanation of the Code

  • public class HelloWorld: Defines a public class named HelloWorld. In Java, all code resides within classes.
  • public static void main(String[] args): This is the entry point method where execution begins. Every executable Java application must have one main method with this exact signature.
  • System.out.println("Hello, World!");: Prints the string "Hello, World!" followed by a newline to the console.

Step 4: Compile Your Java Program

Before running your program, you need to compile it into bytecode that the Java Virtual Machine (JVM) can execute.

Open your terminal or command prompt:

  1. Navigate to the directory containing HelloWorld.java.
  2. Run this command:
javac HelloWorld.java

If there are no syntax errors, this command produces a file named HelloWorld.class in the same directory , this is compiled bytecode.

If errors occur during compilation, they will be displayed along with line numbers for easy troubleshooting.

Step 5: Run Your Java Program

To execute your compiled program:

java HelloWorld

Note that you specify only the class name without the .class extension.

You should see:

Hello, World!

printed on your console window. Congratulations! You have successfully written and run your first Java console application.

Step 6: Enhancing Your Application – Accepting User Input

Console applications become more useful when they interact dynamically with users. Let’s modify our program to accept input from the keyboard and respond accordingly.

We’ll create a simple program that asks for your name and greets you personally.

Replace your existing code in HelloWorld.java with:

import java.util.Scanner;

public class HelloWorld {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("Enter your name: ");
        String name = scanner.nextLine();

        System.out.println("Hello, " + name + "! Welcome to your first Java program.");

        scanner.close();
    }
}

Explanation of New Elements:

  • import java.util.Scanner;: Imports the Scanner class which helps in capturing input from various sources including keyboard input (System.in).
  • Scanner scanner = new Scanner(System.in);: Creates a new Scanner object linked to standard input.
  • scanner.nextLine();: Reads an entire line typed by the user until they press Enter.
  • scanner.close();: Closes the Scanner resource when done to free up system resources.

Compile and Run Again

After saving changes:

javac HelloWorld.java
java HelloWorld

You will see:

Enter your name:

Type your name and press Enter to get greeted personally.

Step 7: Adding More Logic – Simple Calculator Example

To further practice control flow and arithmetic operations in Java, let’s create a basic calculator that adds two numbers entered by the user.

Create a new file called SimpleCalculator.java and enter this code:

import java.util.Scanner;

public class SimpleCalculator {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("Enter first number: ");
        double num1 = scanner.nextDouble();

        System.out.print("Enter second number: ");
        double num2 = scanner.nextDouble();

        double sum = num1 + num2;

        System.out.println("The sum of " + num1 + " and " + num2 + " is " + sum);

        scanner.close();
    }
}

Explanation

  • The program uses nextDouble() method to read floating-point numbers.
  • It computes their sum and displays it back on screen.

Compile:

javac SimpleCalculator.java

Run:

java SimpleCalculator

Try entering different numbers to see how it performs addition dynamically.

Step 8: Understanding Basic Java Concepts Through Console Apps

By working through these examples, you gain hands-on experience with critical Java concepts including:

  • Classes & Methods: How code is structured into reusable blocks.
  • Variables & Data Types: Storing information (String, int, double, etc.).
  • Input & Output: Reading from keyboard (Scanner) and displaying results (System.out.println).
  • Compiling & Running Programs: Transforming source code into executable bytecode.
  • Control Flow Statements (in next projects): Using conditions (if, else) and loops (for, while) for complex logic.

Console applications provide direct feedback making them ideal for learning these fundamentals before moving onto GUIs or web-based development.

Tips for Writing Good Console Applications in Java

  1. Name classes descriptively: Class names like SimpleCalculator clearly communicate their purpose.
  2. Comment your code: Brief comments improve readability especially when revisiting old projects.
  3. Close resources: Always close Scanners or other I/O objects after use to prevent resource leaks.
  4. Handle exceptions: Eventually learn about try-catch blocks to manage unexpected input errors gracefully.
  5. Practice consistently: The more small programs you write solving different problems, the stronger your skills become.

What’s Next After Console Applications?

Once comfortable building console apps, consider exploring:

  • Graphical User Interface (GUI) programming: Using Swing or JavaFX libraries to create windows-based applications.
  • Object-Oriented Programming (OOP): Learn principles like inheritance, polymorphism, encapsulation for better design.
  • Data Structures & Algorithms: Improve problem-solving efficiency using arrays, lists, trees.
  • Web Development: Use Java frameworks like Spring Boot for backend services.

These advanced topics build upon foundations established by writing simple console applications.

Conclusion

Writing your first Java console application is an exciting milestone that opens doors to numerous programming opportunities. This tutorial walked you through installing necessary tools, writing basic programs that display messages and accept user input, compiling them into bytecode, and running them on the JVM.

Start small but think big , every expert programmer began just like you by building simple yet meaningful projects piece by piece. Keep practicing regularly by experimenting with new ideas and gradually increase complexity as you gain confidence with Java syntax and development workflows.

Happy coding!