Java로 TV 클래스를 구현하며 배우는 생성자 (Constructor) 함수의 활용

Soozoo·2024년 6월 18일

JAVA

목록 보기
8/41

ava에서 객체 지향 프로그래밍(OOP)을 이해하는 핵심 중 하나는 생성자(Constructor) 함수입니다. 생성자 함수는 객체가 생성될 때 호출되어 멤버 변수의 초기화 작업을 수행합니다. 이번 블로그에서는 TV 클래스를 예제로 다양한 형태의 생성자 함수를 구현하고 활용하는 방법을 설명하겠습니다.

1. 생성자 함수란?

생성자 함수는 클래스의 인스턴스가 생성될 때 자동으로 호출되는 특별한 메소드입니다. 생성자 함수의 주요 역할은 객체가 생성될 때 필요한 초기화 작업을 수행하는 것입니다.

Constructor(생성자) 함수: 멤버변수의 초기화 작업을 한다.

-클래스명과 동일하다
-리턴타입 없음(void 조차 사용하지 않음)
-중복정의 가능함(overload 가능)
-default constructor 갖고 있음
(단, 사용자가 생성자함수 재정의를 하면 디폴트 생성자 함수 기능 상실함.)

Code 예시:

TV.java

package constructor;

public class TV {
	private int channel; //멤버변수
	private String color;
	
	public TV(int ch) { //매개변수 1개 생성자함수
		channel = 7;
		color = "black";
	}
	
	public TV(String c, int ch) { //매개변수 2개 생성자함수
		channel = ch;
		color = c;
	}
	
	public TV(String f) { //매개변수 1개 생성자함수
		color = f;
	}
	
	public TV() { // 매개변수 0개 DEFAULT 생성자함수
		channel = 1;
		color = "BLACK";
	}
	
	//channel getter/setter
	public int getChannel() {return channel;}
	public void setChannel(int channel) {this.channel = channel;}
	
	//color getter/setter
	public String getColor() {return color;}
	public void setColor(String color) {this.color = color;} 
	
	public void show() {System.out.println(channel + " , " + color);}
	
	
}

MainEntry.java

package constructor;

public class MainEntry {
	public static void main(String[] args) {
		
		TV tv = new TV(7);
		tv.show();
		
		TV tv2 = new TV("RED", 15);
		tv2.show();
		
		TV tv3 = new TV("Fro");
		tv3.setChannel(1);
		tv3.show();
		
		TV tv4 = new TV();
		tv4.setChannel(13);
		tv4.setColor("ORANGE");
		tv4.show();

	}
}

실행 결과:

7 , black
15 , RED
1 , Fro
13 , ORANGE
profile
넙-죽

0개의 댓글