Methods help you organize your code into small, reusable actions. They make your program easier to read and use.
Method declaration in Java
accessModifier returnType methodName(parameterList) {
// method body
}accessModifier controls who can use the method (like public or private).
returnType is the type of value the method gives back, or void if it returns nothing.
public void sayHello() { System.out.println("Hello!"); }
private int add(int a, int b) { return a + b; }
public boolean isEven(int number) { return number % 2 == 0; }
This program has two methods: one to greet the user and one to add two numbers. The main method calls them to show how methods work.
public class Main { public static void main(String[] args) { greetUser(); int sum = addNumbers(5, 7); System.out.println("Sum: " + sum); } public static void greetUser() { System.out.println("Welcome to the program!"); } public static int addNumbers(int x, int y) { return x + y; } }
Method names usually start with a lowercase letter and use camelCase.
Parameters inside parentheses are inputs the method needs to work.
Use return to send a value back from the method.
Methods group code into reusable blocks with a name.
They can take inputs (parameters) and give back outputs (return values).
Declaring methods helps keep your code clean and organized.
Practice
Solution
Step 1: Check method signature format
The correct method declaration includes access modifier, return type, method name, and parentheses for parameters.Step 2: Validate syntax correctness
public int getNumber() { return 5; } correctly uses 'public int getNumber()' with parentheses and a return statement.Final Answer:
public int getNumber() { return 5; } -> Option BQuick Check:
Method declaration = public int getNumber() { ... } [OK]
- Omitting parentheses after method name
- Missing return type before method name
- Using brackets [] instead of parentheses for parameters
Solution
Step 1: Identify correct method header and body syntax
Method header must have parentheses around parameters and body enclosed in braces.Step 2: Check for syntax errors
void printMessage(String message) { System.out.println(message); } correctly declares method with parameters in parentheses and body in braces.Final Answer:
void printMessage(String message) { System.out.println(message); } -> Option AQuick Check:
Method syntax = returnType name(params) { body } [OK]
- Adding semicolon after method header
- Missing parentheses around parameters
- Omitting braces for method body
public class Test {
public static int add(int a, int b) {
return a + b;
}
public static void main(String[] args) {
System.out.println(add(3, 4));
}
}Solution
Step 1: Understand method call and parameters
The method add takes two integers and returns their sum.Step 2: Calculate the return value
Calling add(3, 4) returns 3 + 4 = 7, which is printed.Final Answer:
7 -> Option CQuick Check:
3 + 4 = 7 [OK]
- Confusing concatenation with addition
- Expecting compile error due to static method
- Ignoring return value and expecting no output
public int multiply(int x, int y) return x * y; }
Solution
Step 1: Check method header and body braces
The method header must be followed by an opening brace '{' to start the method body.Step 2: Identify missing brace
The code lacks '{' after the method header, causing a syntax error.Final Answer:
Missing opening brace '{' after method header -> Option DQuick Check:
Method body must start with '{' [OK]
- Forgetting opening brace '{'
- Placing return statement outside method body
- Confusing semicolon placement
filterPositive that takes an array of integers and returns a new array containing only the positive numbers. Which method declaration is correct?Solution
Step 1: Determine return type and parameter type
The method returns an array of integers, so return type must be int[]. The parameter is an int array.Step 2: Check syntax correctness
public int[] filterPositive(int[] numbers) { /* implementation */ } correctly declares return type as int[] and parameter as int[]. Other options have wrong return types or parameter syntax.Final Answer:
public int[] filterPositive(int[] numbers) { /* implementation */ } -> Option AQuick Check:
Return type matches output array type [OK]
- Using int instead of int[] as return type
- Incorrect parameter array syntax
- Using void when method returns data
Ready to prove it?
Pass the test and this pattern moves unknown
