간단한 덧/뺄셈을 클래스로 변수를 받아보고 메소드로 변수를 받아보며 구현해 보았습니다.
자바 개념어만 뗀 상태라서 바로 적용이 어렵더라구요.
다른분도 어렵게 느끼실...지 모르겠지만 최대한 제 나름대로 쉽게 설명해보겠습니다!
본 글은 egoing 님의 강의를 기반으로 제작되었습니다!
메소드로 변수를 받는 법
우선, main 함수의 구성부터 확인해본다면, c라는 인스턴스의 메소드인 sum 으로 1, 2 가 들어간 사실을 확인할 수 있습니다.
Cal class 를 확인해 볼까요? class 단계에서는 따로 변수가 선언되지 않았습니다. method 단계에서 int v1, int v2 변수가 들어갔음을 확인할 수 있습니다.
Cal2 class 까지 확인해 본다면, 메소드 안의 return 값에서 sum, minus 가 처리됨을 알 수 있습니다.
그리고, 부모 메소드를 끌어와서 쓰기 위해서 super.sum(v1, v2) 의 경우에는 cal2 sum 메소드로 내려온 v1, v2 가 다시 cal sum 메소드로 넘어가는 것을 확인할 수 있습니다!
클래스로 변수를 받는 법
main 함수의 구성부터 확인해본다면, 아까와 달리 인스턴스를 선언할 때 클래스 단계에서 1, 2 변수가 들어간 사실을 확인할 수 있습니다.
우선 calculate class의 선언부터 확인해보자면 class 단위에서 int v1, v2 를 선언하고 시작한다는 것을 확인할 수 있습니다.
그리고 나서 생성자에서 매개변수를 취해준 후, method 에서 바로 this.v1+v2 로 return 을 해줍니다.
Calculate2 class 에서 전역변수를 매개변수로 할당하는 방법으로 super(v1, v2) 라고 하는 방법으로 진행을 해줍니다.
나머지는 일치합니다.
우선 calculate 인스턴스화 그리고 출력 과정에서 첫 두줄이, calculate2 인스턴스화/출력 과정에서 후 세줄이 출력됩니다.
처음하는 자바 쉽지 않네용... 하다보면 늘겠죠 뭐 ㅎㅎ
'개발 > Java' 카테고리의 다른 글
[Java] main 메소드 앞에 public 이 와야하는 이유 (0) | 2022.11.07 |
---|---|
[Java] class를 활용해 중복을 줄여나가기 (0) | 2022.10.27 |
[Java] 이클립스 단축키 모음 (0) | 2022.10.27 |
[Java] 기본용어 정리(클래스, 메소드, static, void, public, private, main, super, this, overriding, overloading) (0) | 2022.02.18 |
[Java] 클래스, 인스턴스, 객체, 멤버에 대한 정의 (0) | 2022.02.08 |