함수끼리는 메모리 공간을 공유하지 않는다.
(서로 다른 변수)
(우연히 변수의 이름이 같지만 주소가 완전히 다르다)
호출이 끝나면 메모리가 해제 된다.
함수의 3요소
1) input (인자, 입력값, 파라미터, args, 매개변수, 인수)
2) output (반환, return, 결과값)
3) 기능
함수의 종류 4가지
A) input도 없고 output도 없어
B) input은 있고 output은 없어
C) input은 없고 output은 있어
D) input도 있고 output도 있어
INPUT : 여러개가 가능 하다.
OUTPUT : 없거나, 1개만 존재 해야 한다. -> 2개 이상은 불가능 하다.
(다른 값에 의미를 부여하는 방식으로 해결이 가능하긴 하다)
public : 공개범위 (자바는 공개정책)
static : "객체와 무관하게"
public static OUTPUT 함수명(INPUT)
void : '아무것도 없음' , '무'를 의미한다.
함수명은 "기능"을 유추할 수 있게 만들어야만 한다.
전위증감연산자 >> 함수호출 >> 후위증감연산자
함수를 호출할 때에는 값 (value)을 전달 한다.
"변수 자체, 주소 자체" 를 전달 하는것이 절대 아니다.
"call by value" (값에 의한 호출)
return : 함수를 즉시 종료 시키는 코드 이다.
함수를 만들 때 기능을 잘개 쪼갤 수 있으면 잘개 쪼개는게 좋다.
-> 기능 분할
함수를 만드는 방법
1. 메서드 시그니쳐를 먼저 만들고, 그 다음에 기능을 구현
or
2. 기능을 먼저 만들고, 메서드 시그니쳐를 문제에 맞추는 방법
2번 방법은 보통 완성된 기능들의 묶음을 하나하나 분리 해내는 작업을 할 때 사용.
이것을 모듈화 또는 컴포넌트화 라고 부른다.
코드의 재사용성이 증가 한다.
: 오류의 파급효과 절감
: 개발시간, 비용 단축
: 이익 증가
: 유지보수 용이
'Java (국비) > Java 이론' 카테고리의 다른 글
Java (0) | 2023.05.11 |
---|---|
객체지향언어 (Object Oriented Language) 특징 (2) | 2023.05.10 |
Flag 알고리즘 (2) | 2023.05.06 |
최대값, 최소값 알고리즘 (0) | 2023.05.06 |
두 변수의 값 바꾸기 (0) | 2023.05.06 |