생성자

9mond·2023년 7월 9일
0
post-thumbnail
post-custom-banner

1. 생성자란?

  • Memeber member = new Memeber();
  • new 키워드를 사용하여 객체가 생성될 때 자동으로 실행되는 특수한 형태의 메서드
  • 리턴형을 명시하지 않으며, 메서드의 이름은 클래스와 동일하다.
	class Member{
		Member(){
			// 이 안은 객체가 생성될 때 자동으로 호출된다.
		}
		....
	}
  • 생성자를 왜 쓰는가? : 자동으로 실행된다는 특성 때문에, 객체가 생성되면서 해당 객체의 특성을 초기화 하기 위하여 사용된다.
    (ex. 멤버변수의 초기값을 할당하는 용도)

2. 기본 생성자

  • 파라미터가 없는 생성자
  • 클래스에 특별히 생성자가 정의되지 않은 경우 java컴파일러는 다음과 같은 기본 생성자가 존재한다고 인식한다.
	class User{
		User(){
			// 생성자가 있지만, 내용이 비어있다.
		}	
	}

3. 파리미터를 갖는 생성자

  • 생성자도 메서드의 한 종류이므로 파라미터를 함께 정의하는 것이 가능하다.
  • 생성자의 파라미터멤버변수에 복사하는 것으로 객체의 초기화를 외부적인 요인에 의해 처리할 수 있다.
	class Student{
		String name;
		int age;
		
		Student( String name, int age ){
			// 생성자 파라미터의 값을 멤버변수에 복사
			this.name = name;
			this.age = age;
		}
	}
	------- -----------------------------------------------
	// 생성자에 파라미터가 정의된 경우 생성 구문에서 해당 파라미터를 전달해야 한다.
	Student std = new Student("자바학생", 20);


	source -> Generate constructor using fields
profile
개발자
post-custom-banner

0개의 댓글