Method
명령어들의 집합을 메소드 라고 한다.
호출한 메소드는 반드시 호출한 곳으로 되돌아오며
return(결과값, 반환값)은 반드시 1개뿐이여야 한다.
또한, 반환(return)되는게 없으면 void로 선언해야 된다.
[형식]
returnType 메소드명(인수형 인수, 인수형 인수 ... ){
메소드body
}
호출 방식
객체명.메소드명(값1, 값2 ... )
메소드가 static 일 경우 : 클래스명.메소드명(값1, 값2 ... )
메소드에서 static이 있는 경우에 클래스명을 함께 메소드명을 호출한다.
Method01.display();
만약 불러야 하는 메서드의 클래스가 main의 클래스와 같은 경우 클래스명을 생략해도 무관하다.
display();
하지만 static이 없는 경우는 new를 사용해서 호출해야된다.
Method01 m = new Method01();
m.output();
생성자(Constructor) 메소드
객체를 초기화하는 것이 생성자의 목적이다.
1. 생성자명은 반드시 클래스명과 동일해야한다.
2. 클래스를 메모리에 생성 시 (new 할 때) 생성자를 자동 호출한다.
3. returnType(결과형)이 없다.
결과형 메소드명(매개변수형 이름, 매개변수형 이름...){ // 구현
returnType
} ==> 쓰지 말라는 뜻
변수형이 같아도 통합해서 사용할 수 없다.
int sub(int a, b){ } // error!
int sub(int a, int b){ }
void sub(int a, int b) { }
static
static은 실행하고 함수가 끝나면 바로 사라지는 일반 메소드와는 달리
메모리에 저장이 되기 때문에 한번 저장되면 쉽게 사라지지 않는다.
package class__;
public class Method01 {
public static void main(String[] args) { // 구현
// static 메소드 호출 - 클래스명.메소드명
Method01.display();
display(); // 내 구역 안에서는 클래스명 빼도 가능
Method01 m = new Method01();
m.output();
// static으로 되어 있지 않은 메소드이기 때문에
// new로 생성해줘야 된다.
m.display();
}
public static void display() { // 구현
System.out.println("static method");
// 출력 후 복귀
// 함수의 문이 닫히면 전부 reset, 사라진다.
}
public void output() { // 구현
System.out.println("non-static method");
}
}
2024-7-12
'Java' 카테고리의 다른 글
Java, 객체 배열 생성 (0) | 2024.07.15 |
---|---|
Java, Static 클래스 변수 / 접근 제어자 / import static (0) | 2024.07.15 |
Java, Class의 정의(객체지향, seter/geter, Overload) (0) | 2024.07.12 |
Java, 다차원 배열이란(2차원 배열, 가변길이, 고정길이, 동적 할당, 정적 할당) (0) | 2024.07.10 |
Java, Lotto 프로그램 - 자동 번호(중복된 값 제외, 오름차순, 줄바꿈) (1) | 2024.07.10 |