안녕하세요.
이번 시간에는 클래스가 어떤 녀석인지 개념을 잡아보도록 하겠습니다.
위는 기존의 코드인데요. 메인함수에서 sum함수를 사용할때 바로 함수 이름을 적어줬지만,
사실은 이렇게 앞에 클래스명을 적어주는 것이 기본 형태입니다. 스터디01 클래스 속에 있는 함수이기 때문에 Study01.sum()인거죠.
클래스명.함수명();
하지만 메인 함수와 sum 함수가 같은 클래스에 있기 때문에 클래스명을 생략할 수 있었습니다.
그렇다면 말입니다... sum 함수를 다른 클래스에 한번 만들어볼까요?
https://ridd-coding.tistory.com/17
위 글을 참고해서 MyMath라는 이름의 클래스를 만들고 함수를 집어넣도록 합시다. (메인함수 만들기에 체크하지 말고 만드세요)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | package study; public class MyMath { public static int sum(int num1, int num2) { return num1 + num2; } public static int cha(int num1, int num2) { return num1 - num2; } public static int gop(int num1, int num2) { return num1 * num2; } } | cs |
다시 스터디01 클래스로 돌아와서 MyMath라고 적고 점을 찍으면 이렇게 그 클래스에 속해있는 함수들이 나열됩니다. 골라서 쓸 수 있는 거죠^^
여기까지 보신 분들은 '클래스는 함수를 모아놓는 곳이구나' 라고 생각하실지 모르겠는데 변수를 넣어둘 수도 있습니다. 아래를 보시죠.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | package study; public class MyMath { static double pi = 3.14; // 실수형 변수 pi public static int sum(int num1, int num2) { return num1 + num2; } public static int cha(int num1, int num2) { return num1 - num2; } public static int gop(int num1, int num2) { return num1 * num2; } } | cs |
여태까지 메인함수 안에만 변수를 적어줬었는데, 사실은 함수 밖에도 변수를 적어줄 수 있습니다. 변수의 자료형 앞에 static이 붙은 이유는 다음에 설명해드릴게요.
이제 리스트에 pi변수도 추가되었습니다. 메인함수를 실행하면 콘솔창에 3.14가 출력되겠죠~
클래스가 뭔지 감이 잡히셨나요? 관련있는 변수와 함수를 모아놓은 꾸러미라고 하고 싶네요.
강좌 초반에 제가 슬라임 퇴치 게임을 만든다고 했었죠? 다음 시간에는 슬라임 퇴치 게임의 기초가 되는 슬라임 클래스를 만들어보도록 하겠습니다.
감사합니다.
'자바로 게임 만들기' 카테고리의 다른 글
[자바로 게임 만들기] 25. 슬라임 번식 시키기 (0) | 2019.01.10 |
---|---|
[자바로 게임 만들기] 24. 슬라임의 공격이 시작되었습니다 (1) | 2019.01.10 |
[자바로 게임 만들기] 22. 클래스에 색칠하기 (0) | 2019.01.09 |
[자바로 게임 만들기] 21. 인수가 있는 리턴함수 (0) | 2019.01.08 |
[자바로 게임 만들기] 20. 리턴함수 (2) | 2019.01.07 |