[JAVA] 자바 Modifier와 생성자

logg·2021년 1월 5일
0
post-thumbnail

1. 자바 Modifier

1-1. static 예약어

  • 클래스 변수

    • static 예약어 = 멤버 변수와 메서드 앞에 붙일 수 있는 modifier로서, 활용 방법을 제어함

    • 인스턴스 변수

      • static 예약어가 붙지 않는다.
      • 클래스로부터 객체가 생성될때마다 각 개체의 변수들이 생성됨
      • 각 개체마다의 변수들이기 때문에 한 객체의 값이 변경되어도, 다른 객체의 값에는 영향을 주지 않음
    • 클래스 변수

      • static 예약어가 붙을 수 있다.
    • 클래스 변수가 필요한 이유는?

      • 객체끼리 동일한 값을 가지고 있을 때 중복되는 값들을 클래스 변수로 처리하여 훨씬 더 빠르게 처리할 수 있음
    • 클래스 메서드

      • 인스턴스를 생성하지 않고도 사용 가능

      • 인스턴스 변수는 인스턴스를 생성해야만 메모리가 잡히기 때문에 클래스 메서드에서 사용이 불가능함

2-2. final 예약어

  • 변수와 final

    • final이 붙은 변수는 단 한 번 초기화가 가능하지만, 초기화 이후에는 값을 변경할 수 없는 상수

    • 클래스를 선언할 때 final 예약어를 추가하면 상속을 금지하는 의미

2-3. 추상 클래스/메서드

  • 추상 메서드가 있으면 클래스도 추상 클래스여야함

  • 부모 클래스에서 추상 메서드가 있으면 자식 클래스는 추상 클래스여야 컴파일 에러가 생기지 않음

2. 생성자

2-1. 생성자 개요

  • 생성자의 개념

    • 생성자(Constructor)는 클래스로부터 객체를 생성할 때 호출되며, 객체의 멤버 변수를 초기화하는데 사용되는 메서드

    • 생성자를 통해 복잡한 작업을 한 줄로 처리 가능함

    • 클래스와 같은 이름을 가진다.

    • 주된 역할은 메서도르서 객체 생성 시 멤버 변수의 초기화

    • new 생성자() 형태로 항상 같이 사용됨

  • 기본 생성자

    • 클래스에 생성자가 없으면, 컴파일러에 의해 자동으로 생성되는 생성자
  • this의 의미

    • this를 사용하여 멤버 변수와 매개변수 이름을 구분하여 프로그램의 가독성을 높임
profile
logg

0개의 댓글