열심히 끝까지
23강 클래스에 대하여 - 생성자 본문
23-1 ) 생성자
<복습>
21강 클래스에 대하여 - 인스턴스 변수와 클래스 변수
<복습>
클래스란? 객체를 만들기 위한 설계도
객체란? 독립적으로 존재할 수 있는 것
인스턴스란? 클래스로 실제 메모리에 생성된 객체(객체가 더 포괄적인 의미)
클래스 생성 방법
class 클래스명{
변수 혹은 메서드
}
객체(인스턴스) 생성 방법
클래스명 참조변수 = new 클래스명(); ( 클래스명(); < 생성자)
객체 내 필드 접근 방법
참조변수.필드명
*생성자?
: 객체 생성 시 호출되어 변수들을 초기화하는 메서드
[특징]
- 클래스와 이름이 같음
- 리턴 타입, 반환값이 없음
(1) 기본 생성자
[구조]
- 구현부
클래스명( ){ }
- 호출부
클래스명( );
---------------------------------
ex ) [구조]
- 구현부
// Aclass라는 클래스 내에서 생성자를 만들고 싶다?
// 같은 이름으로 쓰고 ()쓰고 괄호 안에 할 것 적기
Aclass(){
x=100;
}
- 호출부
new Aclass();
// new는 생성자라는 것은 객체를 생성해라!
// 객체를 생성했을 때 그 값을 저장할 공간을 만들어야 함
// 그 능력를 가진 것이 new
<실습> Constructor1, 2
(2) 매개변수 생성자
: 생성자가 매개변수를 받아 올 때,
그 생성자의 구조를 매개변수 생성자라고 함
[구조]
- 구현부
클래스명(자료형 변수명..){ }
- 호출부
클래스명(값);
---------------------------------------------
ex ) [구조]
- 구현부
Bclass(int a){
x=a;
System.out.println("Bclass() : 매개변수 생성자, x : " + a);
}
- 호출부
new Bclass(10);
<실습> Constructor3
** this?
- 현재 객체를 지칭하기 위한 키워드
- 매개변수의 변수명과 객체 내 변수의 이름이 같을 경우
this를 사용해서 구분함
** class에 생성자를 만들지 않았을 때 컴파일러가 자동으로 기본 생성자를 만들어 준다.
그렇기에 따로 만들지 않아도 기본 생성자는 존재
하지만 default 생성자를 만드는 순간 기본 생성자는 사라짐
<실습>PhoneConstructor
'멘토씨리즈 JAVA' 카테고리의 다른 글
25강 상속과 다형성 - 다형성 개념과 다형성 관련 실습 (0) | 2022.04.30 |
---|---|
24강 상속과 다형성 - 상속 / 메서드 오버라이딩 (0) | 2022.04.29 |
22강 클래스에 대하여 - 객체타입배열 / 연습 계산기 클래스 (0) | 2022.04.29 |
21강 클래스에 대하여 - 인스턴스 변수와 클래스 변수 (0) | 2022.04.29 |
20강 클래스에 대하여 - 클래스와 객체 (0) | 2022.04.28 |