✿∘˚˳°∘°

9일차 : 메소드(Method) 본문

국비수업/JAVA

9일차 : 메소드(Method)

_HYE_ 2022. 12. 8. 17:10

2022/12/08

 

1. 메소드

1 - 1 ) 메소드의 기본

- 메소드의 형태 : [접근제어지시자] 반환형 메소드명(매개변수){실행코드;}

(접근제어지시자는 생략가능하다 - 생략 시 default)

예 : public void name() { System.out.println("hi"); }

- 메소드의 접근제어지시자

public / protected / default / private

- 메소드의 반환형 
void : 반환값이 없을경우 / 기본자료형 : 반환값이 기본자료형(int char...) / 
참조자료형 : 반환값이 참조자료형(String, 사용자지정) (배열도 참조자료형이다)

- 메소드의 매개변수

() : 매개변수가 없는것을 의미 

기본자료형(int, char...) : 사용 시 값을복사 - 메소드에서 해당값을 변경해도 원래값유지(call by value)

참조자료형(String, 배열..) : 사용 시 주소값을 복사 - 메소드에서 해당값을 변경하면 원래값에서 변경된다 call by reference)

(매개변수의 개수에는 제한X 콤마(,)를 통해 구분한다)

 

1 - 2 ) 같은 클래스에서 메소드호출

호출방법 : 메소드명();

잠깐이리로와~라고 하는것, 잠깐 부른다고해서 호출한다고한다.(아래로내려갔다 오는것이 아님)

( test2()는 접근제어자가 private이기때문에 동일클래스에서만 사용가능 )

 

1- 3 ) 다른클래스의 메소드 호출

호출방법 : 클래스명 별명 = new 클래스명(); 

사용하고 싶을때 별명.메소드명(); 으로 사용하면 된다.

 

// 다른 클래스의 메소드에서 사칙연산을 하는 프로그램 

메소드들을 호출하고 실행 후 출력할 메인코드
호출되면 실행될 메소드들이 모여있는 클래스

// 정수를 입력받아 메소드에서 계산을하고 호출하는 프로그램

1 - 4 ) Call By Value / Call By Reference

 

Call By Value : 값자체를 주면서 부르기 - 메소드에서 값이 변경되더라도 원본값에 영향이없다.

Call By Reference : 값이아닌 주소값을 주면서 부르기 - 메소드에서 수정을하면 원본값에 영향을 미친다.

# 주의할점 # 메소드(배열명), 메소드(배열명[인덱스])는 다르다.   예 : addArr(arr) / addArr(arr[2]) -- 후자는 반환값 o

1 - 5 ) 메소드의 오버로딩(Overloading)

- 성립조건 : 메소드의 이름이 같아야한다 / 매개변수 선언부가 달라야한다(매개변수 타입,갯수,순서)

메소드를 호출할 원본코드

1 - 6 ) 오늘배운 내용을 종합한 예제

실행 클래스
기능제공클래스( 실제메소드 )

[ 후기 ] ---------------------------------------------------------------------------------------------------------------------------------------------

오늘은 메소드에 대해배웠다. 메소드에 매개변수를 넣어 출력하는 문제가 가끔 헷갈리긴했지만, 그래도 거의 이해가 되어서 실습에는 큰 문제가없었다! 오버로딩조건과 나중에배울 오버라이딩과 혼동하지않도록 주의해야겠다.

 

오늘 실수한 점 

1. 서술형 시험 상수형변수

상수형변수 : 변수란 값을 담아두는 공간 / 상수형변수는 그 값이 변하지 않는걸 의미(예:PI3.14) final로 선언한다

'국비수업 > JAVA' 카테고리의 다른 글

11일차 : 객체지향프로그래밍-학생관리프로그램  (0) 2022.12.12
10일차 : 객체지향프로그래밍  (0) 2022.12.12
8일차 : 배열  (0) 2022.12.07
7일차 : Random, 배열  (0) 2022.12.07
6일차 : Break, Continue, Random  (0) 2022.12.06
Comments