[Java]클래스 제작과 객체 생성 예제
1. 클래스 제작해보기
클래스는 크게 멤버변수, 메서드, 생성자로 구성된다.
예시로 한번 살펴보자.
Store(가게)라는 클래스를 생성하고
멤버변수로 name(가게명), item(파는 물건), buy메서드(손님이 물건 구매)를 작성해 보았다.
public class Store{ //클래스 명
//멤버변수
public String name;
public String item;
public int totalMoney;
//생성자.
public Store(){
System.out.println("생성자입니다.");
}
//메서드
public void buy(){
System.out.println("메서드입니다.");
}
}
1.1 클래스 명
일반적으로 클래스 이름은 첫 글자는 대문자로 작성한다.
맨 앞의 public 이라 적힌 내용은 접근제한자 관련된 내용인데 다음번에 다루도록 하고 이번에는 넘어가도록 하자.
1.2 생성자
객체를 새로 생성할 때 가장 먼저 호출되는 메서드이다.
생성자로 만드는 규칙은 메서드 명을 클래스 명과 동일하게 작성하고 반환값을 명시하지 않으면
생성자로 인식해서 가장 먼저 호출하게 된다.
일반적으로 생성자에서는 멤버변수 값들의 초기화 작업 등이 이루어진다.
1.3 메서드
클래스를 통해 생성한 객체를 통해서 어떠한 기능을 수행하고자 할 때 필요한 작업을 넣는다.
참고로 메서드 명 전에 void라고 적힌 것이 반환될 타입을 명시하는 공간이고
public이라 적힌 곳이 접근제한자이다.
2. 객체 생성하기
클래스를 다 만들었다면 실제로 객체를 만들어보자.
위의 클래스 코드대로 파일을 만들어 놓고 메인 함수에서 다음과 같이 객체를 생성하고 호출할 수 있다.
public static void main(String[] args) {
Store store = new Store();
store.name = "가게1";
store.item = "상품1";
store.totalMoney = 1000;
System.out.println("store.name = " + store.name);
System.out.println("store.item = " + store.item);
System.out.println("store.totalMoney = " + store.totalMoney);
store.buy();
}
위와같이 작성하고 코드를 작동시켜보면 아래와 같이 출력되는 것을 볼 수 있다.
가장 먼저 클래스로부터 객체가 생성되면서 생성자가 호출되면서 적어놓았던 로그가 출력되었다.
다음으로 각 멤버변수에 넣어놓았던 값들을 출력한 값들이 출력되고
마지막으로 메서드를 호출하면서 생기는 로그가 나오는 것을 볼 수 있다.
[참고] 객체의 메모리 저장 방식에 대하여
객체는 메모리에 저장될 때 레퍼런스 방식으로 저장된다.
따라서 JVM의 메모리내 힙 공간(주로 레퍼런스 타입의 변수들을 저장해놓는 공간)에 객체정보가 들어가고
store 변수안에는 힙 공간 내에 저장된 객체의 주소가 담기게 된다.
Reference
이 포스팅은 아래의 강좌를 참고하여 만들어졌습니다.
- 자바 프로그래밍 입문 강좌 (renew ver.) - 초보부터 개발자 취업까지!!
https://www.inflearn.com/course/%EC%8B%A4%EC%A0%84-%EC%9E%90%EB%B0%94_java-renew/dashboard
'Language > Java' 카테고리의 다른 글
[Java]접근제어자(Access Modifier) 개념 정리 (0) | 2020.08.26 |
---|---|
[Java]메소드(Method)와 오버로딩(Overloading)의 사용법 및 예제 (0) | 2020.08.26 |
[Java]객체 지향 프로그래밍의 기초-객체와 클래스의 개념 및 예제 (0) | 2020.08.26 |
[JAVA]반복문 개념 정리 for, foreach,whlie, do-whlie문 사용법 및 예제 (0) | 2020.08.21 |
[Java]네이버 번역 파파고 API 적용 및 예제 (0) | 2020.08.21 |