728x90
메소드 선언
[접근제한자] [static] 리턴type 메소드이름([type 매개변수,...]) {
실행문
...
}
public int method1 (int x) {
...
}
매개변수:O, 반환값 : O
public void method2(){
...
}
매개변수 : X, 반환값 : X
public void method3(int x) {
...
}
매개변수 : O, 반환값 : X
public int method4(){
...
}
매개변수 : X, 반환값 : O
public void method5(int x, int y) {
...
}
매개변수 : 2개, 반환값 : X
클래스와 메소드 만들어보기
public class MathBean{
public void printClassName(){
System.out.println("MathBean");
}
public void printNumber(int number){
System.out.println(number);
}
public int getOne(){
return 1;
}
public int plus(int x, int y){
return x+y;
}
}
printClassName, printNumber, getOne, plus라는 메소드를 가지는 MathBean클래스를 생성
UML 표기법
MathBean |
+ getOne() :int + plus(int,int) :int + printClassName() :void + printNumber(int) :void |
+ : public
내가 만들 클래스, 메소드, 각메소드가 받아들일 값과 리턴 값을 설계 하고 프로그래밍을 한다.
클래스를 사용하려면 클래스가 메모리에 올라가야 한다.
new라는 연산자가 사용되어야 한다.
MathBeanTest라는 클래스 생성
모든 메소드가 실행되려면 필요한 메소드 : 메인!
public static void main(string[], args){
}
static이 붙은 메소드는 클래스 인스턴스를 만들지 않아도 자바 버추얼 머신이 실행할 수 있다.
그래서 메인 메소드 부터 실행할 수 있는 것!
public class MathBeanTest{
public static void main(String[], args){
MathBean math = new MathBean(); // MathBean 클래스의 인스턴스가 heap 메모리에 올라간다
math.printClassName();
math.printNumber(5000);
int x = math.getOne();
System.out.println(x);
int value = math.plus(200,300);
System.out.println(value);
}
}
리모컨과 유사한 개념이라고 생각하면 된다.
TV 리모컨 = new TV();
리모컨의 버튼을 누르면 실제 TV인스턴스가 동작한다.
= math를 사용하는 것은 MathBean 인스턴스를 다루는 것.
'프로그래밍 > java' 카테고리의 다른 글
6. java 클래스 잘 만들기 (0) | 2023.04.10 |
---|---|
5. java 필드, static field (0) | 2023.04.05 |
4. java 메소드가 실행될 때 어떤일이 벌어지는가? (0) | 2023.03.16 |
2. java 객체지향 프로그래밍 (1) (0) | 2023.03.10 |
1. Hello. java (0) | 2023.03.10 |
댓글