Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Sort()
- java
- 리액트
- Node.js
- 오류
- 추상클래스
- int와 integer
- mybatis
- Oracle
- 배열
- React
- app.use
- js
- Spring
- qqOperater
- 네임드생성자
- DB
- 깃허브
- 다형성
- 자바스크립트
- 삼항연산자
- Pug
- dart
- 자바
- push함수
- 콘솔게임
- Middleware
- 생성자
- 코딩테스트
- git
Archives
- Today
- Total
평행코드
생성자(Constructor) 본문
생성자
클래스를 객체로만들어낼때 무조건 이용하는 것이며, 객체 속성의 초기 값을 설정하는 데 사용할 수 있다.
생성자는 클래스와 이름이 동일해야한다.
생성자 이름은 클래스 이름과 일치 해야 하며, 반환 유형을 가질 수 없다. (예 : void)
기본 생성자, 매개변수가 있는 생성자, 메서드의 예시
public class MyClass {
private int value;
// 기본 생성자
public MyClass() {
this.value = 0;
}
// 매개변수가 있는 생성자
public MyClass(int value) {
this.value = value;
}
// 메서드
public int getValue() {
return value;
}
}
기본 생성자
작성하지 않은 경우, 클래스 사용 시 JVM이 자동으로 기본 생성자 생성
매개변수 생성자
매개변수 생성자 작성 시 JVM이 기본 생성자를 자동으로
생성해주지 않음
객체 생성 시 전달받은 값으로 객체를 초기화 하기 위해 사용
상속에서 사용 시 반드시 기본 생성자를 작성
this
모든 인스턴스 메소드에 숨겨진 채 존재하는 레퍼런스로 할당된 객체를 가리킴
함수 실행 시 전달되는 객체의 주소를 자동으로 받음
public class Academy{
private String name;
public Academy() { }
public Academy(String name) { this.name = name; } // 이게 더 어떤 변수가 들어가 있는지 알기쉬움
// public Academy(String userName) { name = userName; }
}
* 위와 같이 매개변수를 가지는 생성자에서 매개변수 명이 필드명과 같은 경우
매개변수의 변수명이 우선이므로 this 객체를 이용하여 대입되는
변수가 필드라는 것을 구분해줌
this()
생성자, 같은 클래스의 다른 생성자를 호출할 때 사용하며 반드시 첫 줄에 선언하며
코드의 중복을 제거하기 위해 사용한다
'Java' 카테고리의 다른 글
상속이란? 그리고 super (0) | 2023.09.12 |
---|---|
객체배열 (0) | 2023.09.11 |
메소드 Getter와 Setter (0) | 2023.09.07 |
배열과 2차원 배열 (0) | 2023.09.06 |
객체와 클래스 (인스턴스 필드와 클래스필드의 차이) (0) | 2023.09.05 |