반응형
함수(function)
· 하나의 기능을 수행하는 일련의 코드
· 구현된 함수는 호출하여 사용하고 호출된 함수는 기능이 끝나면 제어가 반환됨
· 함수로 구현된 하나의 기능은 여러 곳에서 동일한 방식으로 호출되어 사용될 수 있음
함수 정의
함수는 이름, 매개 변수, 반환 값, 함수 몸체(body)로 구성
int add(int num1, int num2) {
int result;
result = num1 + num2;
return result;
}
* 반환을 안 할 경우에는 void를 쓴다.
//반환 값이 없는 경우
public static void sayHello(String greeting) {
System.out.println(greeting);
}
//반환만 하고 매개 변수가 없는 경우
public static int calcSum()
{
int sum = 0;
int i;
for(i = 0; i<=100; i++) {
sum += i;
}
return sum;
}
위 함수들의 실행 코드
public static void main(String[] args) {
int n1 = 10;
int n2 = 20;
int total = addNum(n1, n2); //매개 변수를 넣어주고, 반환을 해주는 함수이기에 반환값을 받을 공간을 마련해준다.
System.out.println(total);
sayHello("안녕하세요"); //반환 값은 없고 매개 변수만 있음.
int calc = calcSum();
System.out.println(calc);
}
함수 호출과 스택 메모리
스택: 함수가 호출될 때 지역 변수들이 사용하는 메모리
함수의 수행이 끝나면 자동으로 반환되는 메모리
메서드(method)
객체의 기능을 구현하기 위해서 클래스 내부에 구현되는 함수
멤버 함수(member function)이라고도 함
메서드를 구현함으로써 객체의 기능이 구현됨
메서드의 이름은 그 객체를 사용하는 객체(클라이언트)에 맞게 짓는 것이 좋음 ex) getStudentName( )
함수와 메서드의 차이
함수는 단독 모듈 ( 어디 속해 있지 않음 )
메서드는 클래스 안에 속함. 클래스의 멤버 변수를 활용해서 구현한 것
반응형
'개발 > Java' 카테고리의 다른 글
생성자(Constructor) (0) | 2021.04.19 |
---|---|
인스턴스 생성과 힙 메모리 (0) | 2021.04.19 |
객체와 객체 지향 프로그래밍 (2) | 2021.04.19 |
Break문 & Continue문 (0) | 2021.04.18 |
중첩 반복문 (0) | 2021.04.18 |