Java Syntax and Structure – Writing Your First Real Programs

Welcome back to our Java journey! In our previous posts, we covered what Java is and how to set up your development environment. Now comes the exciting part – writing your first real Java programs!

Think of Java syntax as the grammar rules of a language. Just like English has rules for sentence structure, Java has specific rules for how code should be written. Don't worry if it seems overwhelming at first – we'll break everything down into digestible pieces.

By the end of this post, you'll understand how Java programs are structured and be able to write your own simple programs from scratch. Let's dive in!

Understanding Java Program Structure

Every Java program follows a specific structure, much like how a house needs a foundation, walls, and a roof. Here's what every Java program needs:

The Basic Building Blocks

  1. Class Declaration – Every Java program starts with a class

  2. Main Method – The entry point where your program begins execution

  3. Statements – The actual instructions your program will follow

  4. Proper Syntax – Following Java's grammar rules

Let's see this in action with the simplest possible Java program:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

Don't worry about understanding every word right now – we'll explain each part step by step.

Breaking Down Java Syntax

1. The Class Declaration

public class HelloWorld {
    // Everything goes inside these curly braces
}

What this means:

  • public – This class can be accessed from anywhere

  • class – This keyword tells Java we're creating a new class

  • HelloWorld – The name of our class (must match the filename)

  • { } – Curly braces contain everything that belongs to this class

Important Rule: Your class name must exactly match your filename. If your class is called HelloWorld, your file must be named HelloWorld.java.

2. The Main Method

public static void main(String[] args) {
    // Your program code goes here
}

The main method is like the front door of your house – it's where Java starts running your program.

Breaking it down:

  • public – Can be accessed from outside the class

  • static – Can be called without creating an object (don't worry about this for now)

  • void – This method doesn't return any value

  • main – The special name Java looks for to start your program

  • String[] args – Allows your program to accept input from the command line

3. Statements and Semicolons

System.out.println("Hello, World!");

This is a statement – a complete instruction that tells Java to do something. Notice the semicolon (;) at the end? In Java, most statements must end with a semicolon, just like sentences in English end with periods.

Your First Java Program: Hello World

Let's create your first complete Java program step by step:

Step 1: Create a new file called HelloWorld.java

Step 2: Type this code exactly as shown:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
        System.out.println("Welcome to Java programming!");
    }
}

Step 3: Save the file

Step 4: Open your terminal/command prompt and navigate to the folder containing your file

Step 5: Compile the program:

javac HelloWorld.java

Step 6: Run the program:

java HelloWorld

Expected Output:

Hello, World!
Welcome to Java programming!

Congratulations! You've just written and run your first Java program!

A More Practical Example: Simple Calculator

Let's create something more useful – a simple calculator that adds two numbers:

public class SimpleCalculator {
    public static void main(String[] args) {
        // Let's add two numbers
        int firstNumber = 10;
        int secondNumber = 5;
        int sum = firstNumber + secondNumber;

        System.out.println("First number: " + firstNumber);
        System.out.println("Second number: " + secondNumber);
        System.out.println("Sum: " + sum);
    }
}

What's happening here:

  • We're storing numbers in variables (think of them as labeled boxes)

  • We're performing a calculation (addition)

  • We're displaying the results

Expected Output:

First number: 10
Second number: 5
Sum: 15

Essential Syntax Rules to Remember

1. Semicolons Are Mandatory

// Correct
System.out.println("Hello");

// Wrong - Missing semicolon
System.out.println("Hello")

2. Curly Braces Must Match

// Correct - Every opening brace has a closing brace
public class MyClass {
    public static void main(String[] args) {
        System.out.println("Hello");
    }
}

// Wrong - Missing closing brace
public class MyClass {
    public static void main(String[] args) {
        System.out.println("Hello");

3. Case Sensitivity Matters

// Correct
System.out.println("Hello");

// Wrong - Java is case-sensitive
system.out.println("Hello");

4. Proper Indentation (Best Practice)

While Java doesn't require indentation, it makes your code much easier to read:

// Good indentation
public class MyClass {
    public static void main(String[] args) {
        System.out.println("Hello");
        System.out.println("World");
    }
}

// Poor indentation (works but hard to read)
public class MyClass {
public static void main(String[] args) {
System.out.println("Hello");
System.out.println("World");
}
}

Comments: Making Your Code Readable

Comments are notes you write in your code to explain what it does. Java ignores comments when running your program.

public class CommentExample {
    public static void main(String[] args) {
        // This is a single-line comment
        System.out.println("Hello, World!");

        /*
         * This is a multi-line comment
         * You can write multiple lines here
         */
        System.out.println("Comments help explain code!");
    }
}

Troubleshooting Tips

Common Compilation Errors

1. "Class name does not match filename"

Error: class HelloWorld is public, should be declared in a file named HelloWorld.java

Solution: Make sure your class name exactly matches your filename (case-sensitive).

2. "Cannot find symbol"

Error: cannot find symbol System.out.println

Solution: Check your spelling and capitalization. Remember Java is case-sensitive.

3. "';' expected"

Error: ';' expected

Solution: Add a semicolon at the end of your statement.

4. "'{' expected"

Error: '{' expected

Solution: Make sure all your opening curly braces { have matching closing braces }.

Common Runtime Issues

1. "Could not find or load main class"

Error: Could not find or load main class HelloWorld

Solution:

  • Make sure you compiled the program first with javac

  • Run the program using the class name, not the filename: java HelloWorld (not java HelloWorld.java)

2. "Main method not found"

Error: Main method not found in class HelloWorld

Solution: Make sure your main method signature is exactly: public static void main(String[] args)

Quick Debugging Checklist

When your program doesn't work, check these things in order:

  1. Spelling and capitalization – Java is case-sensitive

  2. Semicolons – Every statement needs one

  3. Curly braces – Every { needs a matching }

  4. Filename matches class name – Exactly, including capitalization

  5. Main method signature – Must be exactly public static void main(String[] args)

Key Takeaways

Let's recap what we've learned about Java syntax and structure:

  • Every Java program needs a class – It's like a container for your code

  • The main method is your starting point – Java looks for this special method to run your program

  • Semicolons end statements – Just like periods end sentences

  • Curly braces group code together – They show what belongs to what

  • Java is case-sensitiveSystem and system are different things

  • Good indentation makes code readable – Your future self will thank you

Writing Java programs is like learning to write in a new language. The more you practice, the more natural it becomes. Don't be discouraged if you make syntax errors at first – even experienced programmers make them!

Keep practicing with the examples in this post, and don't hesitate to experiment with small changes to see what happens. The best way to learn programming is by writing code!

Happy coding! 🚀

2
Subscribe to my newsletter

Read articles from Saikrishna Gatumida directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Saikrishna Gatumida
Saikrishna Gatumida