IT/Programming / / 2023. 4. 21. 17:37

[JAVA] 생성자, this 사용 예제

반응형
package dayday9;
/*
 * <생성자>
 *  - 객체 생성시, 초기화를 담당하는 특수 메소드
 *  - 클래스 선언하면 기본으로 default생성자가 만들어짐
 *  	형식 : 
 *  		public 클래스(){  객체의 모든 멤버를 0 또는 null, false로 초기화 해줌
 *  		} //반환 자료형이 없음
 *  - 객체 생성시 반드시 1회가 호출됨
 *   ( 생성자 호출이 없으면 객체 생성 불가  )
 *  - 생성자 오버로딩을 하면 기존 생성자는 사라짐
 *  - 생성자는 메소드의 맨 위에 한번만 사용가능..
 *   
 *  <this>
 *  this : 이 객체의 레퍼런스(객체 값)
 *  this. : 이 객체의 ~~을 의미
 *  this() : 이 객체의 생성자 호출,
 *  
 */

class Person{
	String name;
	int age;
	Person(){
		System.out.println("기본 생성자 호출");
		
	}
	
	Person(int age)
	{
		this();
		this.age = age;
	}
	
	Person(String name)
	{
		this.name = name;
	}
	
	Person(String name, int age){
		this.name = name;
		this.age = age;
	}
	
	//같은 클래스 내부에 생성자를 호출할 때 this()호출 시 주의점
	/*
	 * 다른 명령보다 제일 먼저 수행해야함
	 * 하나의 메소드안에 여러 생성자를 실행 시킬 수 없다. 
	 */
	
}

public class test01 {
	public static void main(String[] args) {
		Person[] p = {
				new Person(),
				new Person(10),
				new Person("피카츄"),
				new Person("라이츄",20)				
		};
		for(Person tmp : p){
			System.out.println("이름 : "+tmp.name + " 나이 : "+ tmp.age + "세");
		}
	}
}
반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유