Java 기초 (12) 인스턴스, 생성자

코린이서현이·2023년 7월 18일
0

Java

목록 보기
12/46

📕 인스턴스

new예약어를 통해 클래스가 메모리 공간에 생성된 상태
인스턴스 : 힙메모리공간에 저장

  • 하나의 클래스로 여러 인스턴스를 만들 수 있다.
  • 클래스가 생성될때마다 새로운 힙메모리 공간이 부여되고 클래스의 멤버변수는 각각의 메모리 공간을 가진다. (멤버변수를 인스턴스 변수라고 하는 이유)

📖 인스턴스 생성 방법

  //(클래스 자료형) 참조변수 = new 생성자;
  Student seohyun = new Student();

🔍 new Student(); 는 실제로 어떤 값을 가질까?
seohyun 은 지역변수로 스택메모리에 생성된다.
인스턴스는 힙 메모리에 생성된다.
seohyun 에는 생성된 인스턴스의 힙메모리 주소 값이 대입된다.
new Student(); = 힙메모리의 주소 값

📒 인스턴스의 변수와 메소드에 접근하기

  • 인스턴스의 변수 : 참조변수.멤버변수;
  • 인스턴스의 메소드 : 참조변수.메소드();

📕 생성자

생성자가 하는 일 : 클래스를 처음만들때 멤버변수나 상수를 초기화 함.
생성자는 클래스명과 같다.

📖 생성자의 종류

  • 디폴트 생성자 : 컴파일러가 자동으로 생성자를 만들어준다. School()
  • 직접 만든 생성자 : 멤버변수를 변경하고 싶을 때

📒 직접 만든 생성자

⚠️ 주의할 점 : 직접 생성자를 만들어 놓을 경우에는 디폴트 생성자를 자동 컴파일 해주지 않음.

  class School {
      String nameString;

      School(String name){
              this.nameString = name;
      }
  }

📖 생성자의 오버로딩

  • 생성자가 두개 이상 제공되는 경우 (의도적 사용가능)
profile
24년도까지 프로젝트 두개를 마치고 25년에는 개발 팀장을 할 수 있는 실력이 되자!

1개의 댓글

comment-user-thumbnail
2023년 7월 18일

좋은 글 감사합니다!

답글 달기