강잇
강이의 개발블로그
강잇
전체 방문자
오늘
어제
  • 분류 전체보기 (102)
    • Langauge (32)
      • Java-basic (29)
      • Java (3)
    • SpringBoot (7)
    • Algorithm (5)
      • BAEKJOON (5)
    • WEB (7)
      • HTML & CSS (7)
    • DB (1)
      • MySQL (1)
    • OS (17)
      • Mac (2)
      • Linux (4)
      • Terminal Command (11)
    • Computer Science (7)
      • Hard ware (1)
      • Database (1)
      • Data structure (2)
      • Algorithm (2)
      • Network (1)
    • Git (5)
      • 개념 (1)
      • 활용 (1)
      • Trouble Shooting (2)
    • ETC. (13)
      • Install (6)
      • IntelliJ (1)
      • Eclipse (2)
      • Error (3)
      • Tip (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 메서드
  • til
  • CSS 박스 크기 설정
  • 백준
  • 메소드
  • 자바
  • CSS 속성
  • 알고리즘 공부

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
강잇
Langauge/Java-basic

[Java] 생성자

Langauge/Java-basic

[Java] 생성자

2022. 7. 20. 01:15

생성자란

  • 생성자란 인스턴스 변수들을 초기화하는 역할을 지닌 클래스의 내부 구성 요소로 new 키워드와 함께 쓰여 인스턴스를 생성한다.
  • 생성자의 이름은 반드시 클래스명과 동일해야 한다.
  • 생성자는 리턴 타입이 존재하지 않는다.

기본 생성자와 매개변수가 있는 생성자

기본 생성자 : 매개변수가 없는 생성자

  • 기본 생성자란 매개변수가 없는 생성자를 의미함.
  • 모든 클래스는 생성자를 포함하고 있어야 한다. 따라서 클래스 내부에 생성자가 없을 경우 컴파일러가 자동으로 추가함.
// 기본 생성자 구조
클래스명(){
    ...
}

class Person() {
    public Person() {} // 기본 생성자
}

class Person() {
    ...
    // public Person() {} 클래스 내부에 생성자가 하나라도 없으면 컴파일러가 자동으로 추가
}

매개변수가 있는 생성자

  • 생성자도 오버로딩을 통해 여러 개의 생성자를 정의할 수 있다.
  • 매개변수가 있는 생성자는 인스턴스 생성 시에 값을 받아 인스턴스를 초기화하는 데 사용된다.
  • 고유한 특성을 가진 인스턴스를 계속 생성해야 할 경우 각기 다른 값을 가지고 초기화할 수 있어 매우 유용하다.
  • 생성자를 정의 시 당연히 생성자가 존재하므로 컴파일러는 기본 생성자를 따로 추가하지 않음.
// 매개변수가 있는 생성자 구조
클래스명(매개변수){}

public class Main {
    public static void main(String[] args) {
        // 인스턴스 생성과 동시에 초기화
        Person person1 = new Person("홍길동", 15, "남자(Female)");
    }
}
class Person {
    String name;
    int age;
    String gender;

    public Person(String name, int age, String gender) {
        this.name = name;
        this.age = age;
        this.gender = gender;
    }
}
저작자표시 (새창열림)

'Langauge > Java-basic' 카테고리의 다른 글

[Java] 외부 클래스  (0) 2022.07.21
[Java] this키워드와 this() 메서드  (0) 2022.07.21
[Java] 메서드 시그니처와 메서드 오버로딩  (0) 2022.07.19
[Java] 필드와 메서드  (0) 2022.07.18
[Java] 클래스와 객체  (0) 2022.07.13
  • 생성자란
  • 기본 생성자와 매개변수가 있는 생성자
'Langauge/Java-basic' 카테고리의 다른 글
  • [Java] 외부 클래스
  • [Java] this키워드와 this() 메서드
  • [Java] 메서드 시그니처와 메서드 오버로딩
  • [Java] 필드와 메서드
강잇
강잇
학습한 내용을 정리 및 기록하는 블로그

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.