풀스택 웹🌐 개발자 지망생 🧑🏽‍💻
➕ 인공지능 관심 🤖


Categories


Recent views

  • 1
  • 2
  • 3
  • 4
  • 5

JAVA 기본-자바 한정자와 생성자

  1. 자바 한정자(Modifier)
  2. 생성자(Constructor)

자바 한정자와 생성자

자바 한정자(Modifier)

static 예약어

  • 멤버 변수와 메서드 앞에 붙일 수 있는 키워드로 활용 방법을 제어
  • static 예약어가 붙지않으면 -> 인스턴스 변수
    • 일반적인 멤버 변수를 인스턴스 변수라고 부름
    • 각 객체마다 따로따로 가지고 있는 변수, 한 객체의 값이 변경되도 다른 객체에 영향 없음.
  • static 예약어가 붙으면 -> 클래스 변수, 클래스 메서드
    • 클래스로부터 생성된 인스턴스에 포함되지 않는 변수
    • 인스턴스 갯수와 상관없이 하나만 메모리에 존재하여 인스턴스 간 공유
    • 객체를 생성하지 않고도 접근 가능
    • 클래스가 로딩되는 과정 중 메모리에 한번만 할당
    • 객체이름으로도 접근이 가능, 보통 클래스 이름을 통해 접근
    • 메서드의 경우 인스턴스 변수 참조 불가.

final 예약어

  • 생성시 단 한번만 초기화 가능, 변경 불가, const, 상수 역할
  • 보통 static 예약어와 final 예약어를 결합하여 사용
  • 상수는 모두 대문자로 선언, 단어 사이는 _로 구분
  • final 메서드 : 자식클래스에서의 메서드 재정의(오버라이딩) 금지
  • final 클래스 : 상속 금지 클래스 생성

abstract 예약어

JAVA 기본-추상 클래스와 객체 형변환 참조

생성자(Constructor)

생성자 개요

  • 클래스로부터 객체를 생성할때 호출되는 메서드
  • 주로 객체의 멤버 변수를 초기화하는데 사용되는 메서드(코드 단순화)
    • 클래스 내부에 클래스 이름과 똑같은 메서드를 만들고, 매개변수로 초기화할 변수의 값을 넘겨줌(Setter 메서드)
  • 반환형이 존재하지 않고, 생성자와 이름이 같으며, 중복정의(오버로딩) 가능
  • 객체 선언 시new 키워드와 항상 같이 사용됨.
  • 정의하지 않을 시 기본 생성자가 호출됨
  • IDELombok을 통해 클래스의 생성자를 자동을 생성할 수 있는 기능이 있음

this의 의미와 사용법

  • 멤버변수와 매개변수 이름을 구분해 프로그램의 가독성을 높임
  • this.arg -> 멤버 변수, arg -> 매개변수
  • 이름이 겹치지 않는다면 생략가능하지만 가독성을 위해 포함
  • this() 표현을 통하여 생성자나 다른 메서드 안에서 또 다른 생성자를 호출 가능