31. 자바 메서드

jhnada·2022년 8월 1일
0

클래스의 행위에 대해서
행위는 = 메서드 이다.
행위는 " 메서드 이름 + () + {} " 의 구조로 만들어진다.

이러한 형태의 구조를 가지고 있는 것들을 ' 메서드 ' 라고 한다.
main도 같은 구조를 가지고 있으니 메서드라고 한다.

행위안에는 행위를 추가할 수 없다!

메서드는 = 블랙박스(캡슐화) 혹은 매직박스라고도 한다.

캡슐화

호출하면 뭐가 나올지만 알면되고 구조와 원리는 이해할 필요가 없는 것을 말한다.

ex ) 엑셀을 밟으면 자동차가 앞으로 나간다.
메서드를 호출하면 차가 앞으로 나가는 행위

엑셀 : 메서드를 호출하는 인터페이스

개발자들이 블랙박스를 만들어 사용자들(일반인)에게 주며 사용자들이 실행만 시킨다.

남이 잘 만들어 놓은 블랙박스를 가져와서 자신이 쓸 수도 있다. ( 라이브러리 )

이러한 공부를 하는 이유는 우리도 블랙박스를 만드는 것을 배우고 활요하기 위해서이다!

메서드에 출구가 없다는 말은 반환 값이 없다는 말과 같다

이때는 void 를 써서 출구가 없다는 것을 알려줘야 한다.

  • 계산기라는 클래스 안에 void 로 더하기, int 빼기, int 곱하기, int 나누기 메서드를 만들었다.

  • void는 클래스명(계산기) + 메서드이름(g) = new 계산기();
    이런식으로 new 를 붙여서 한번 선언해주고 나서야 값을 받을 수 있다.

이후에 int 두개를 넣어서 계산하는 빼기,곱하기,나누기 등은
int result1~3으로 값을 받아서
System.outprintln(); 으로 볼 수 있다.

메서드 규칙

  1. 투입구와 출구가 있다. 단, 출구는 항상 필요하지는 않다.
  2. 메서드는 하나의 모듈(특정한 역할, 목적을 수행하는)이 될 수 있다.
  3. 출구가 없을 때 void 사용, 출구가 있을 때는 return값의 타입과 동일하게 해 준다.
  4. 메서드 내부(Queue)를 몰라도 사용할 수 있다.(캡슐화)
  5. 메서드는 1급 객체인가? -> 아니다. 자바에서는 1급 객체가 class밖에 없다.
  6. 메서드는 왜 만들어? 특정한 역할, 목적을 수행하는 코드 꾸러미를 만들어 두려고
    -> 캡슐화, 재사용, 코드 관리도 편함, 메모리 관리에도 더욱 효과적(호출할 때만 뜰 거니까)
  7. static 메서드 내부에서는 heap에 있는 데이터(상태 데이터)를 찾을 수 없다.

[출처]
https://jaewon2336.tistory.com/54?category=529695
https://cafe.naver.com/metacoding

profile
밑바닥부터 배우는 초짜 개발자

0개의 댓글