위 글은 김성박의 즐거운 프로그래밍 강의를 보고 내용을 정리한 것입니다.
https://www.facebook.com/groups/codingeverybody/posts/7530033737037097/
강의에 대한 더 자세한 내용은 위의 링크를 참고하시길 바랍니다!
지난 시간 배운 내용
메소드 선언
[접근제한자] [static] 리턴type 메소드이름([매개변수, ...]){
실행문...
}
[ ]은 생략 가능한 부분이다!
매개변수:O , 반환값: O
매개변수도 있고, 반환값도 있을 경우 위와 같이 작성을 한다.
접근제어자는 보통 public으로 쓴다! 다른 경우도 있지만 차차 배우도록 하자
매개변수 X, 반환값 X
매개변수도 없고 반환값도 없을때 void를 써서 나타내고 ()안이 비어있는 것을 알 수 있다.
매개변수 O , 반환값 X
매개변수가 있고 반환값이 없을때는 void를 통해 나타내고()안에 int형태이다.
매개변수: 2개, 반환값 : X
매개변수가 2개일때 메소드이름옆의 ()에 2개의 변수를 입력해주고, 반환값은 void로 나타낸다.
MathBean 클래스를 정의해보자!
위의 내용을 바탕으로 정리해보면,
인텔리제이에서 회색부분은 사용되지 않는 부분을 가르킨다고 한다.
MathBean 클래스 (UML 표기법)
UML 표기법은 클래스간의 관계를 나타내는 것으로, 디자인패턴에 쓰인다고 한다.
MathBean 클래스 실행하기
앞에서 우리는 MathBean클래스를 정의했다!
지난 시간에 배운 객체생성하는 방법을 이용해서 MathBean을 실행 시켜보자!
자바는 어떻게 돌아가는가
자바는 VendingMachineMain을 실행하면 어디서 찾아서 실행할까?
틀린답: 현재 폴더, 폴더
옳은답: CLASSPATH경로에서 찾아서 VendingMachineMain을 찾아서 실행한다.
Math 클래스 알아보기
위의 내용은 Math클래스에 대한 공식문서이다.
내용을 보면 모든 메소드가 static이 붙어있다.
static이 들어가 있으면, 인스턴스를 만들지 않아도 사용할 수 있다고 했다!
위의 공식 문서에 나온것 처럼 Math클래스는 객체를 생성하지 않고 사용할 수 있다.
만약 Math객체를 생성한다면, 아래와 같은 오류가 발생한다.
Math 클래스를 만든 사람들은 어떤 생각을 해서 만들것일까.
Math는 인스턴스를 여러개 만들지 못하게 하게끔 만들어졌다.
인스턴스를 만들때 마다, 메모리가 생성되니깐 아깝다.
간단하게 호출하게 위해 클래스명.method 형태로 쓰여지기를 바랬다.
생성자를 못 쓰게 해야하니까 private으로 만들었다.