[Java] 클래스

오연주·2022년 11월 21일
0

Java

목록 보기
5/7
post-thumbnail

📘 1. 객체 지향 프로그래밍

📌 객체

  • 물리적으로 존재하거나 추상적으로 생각할 수 잇는 것 중에서 자신의 속성을 가지고 있으면서 식별 가능한 것을 말한다.
  • 객체는 속성(필드, 변수)과 동작(메서드)으로 구성됨

객체 모델링

  • 현실 세계의 객체를 소프트 웨어 객체로 설계하는 것

메소드 호출 방법

  • 리턴값 = 객체.메소드(매개값1, 매개값2 ...);

객체 간의 관계
1. 집합 관계 : 집합 관계에 있는 객체는 하나는 부품이고 하나는 완성품에 해당된다.
2. 사용 관계 : 객체 간의 상호작용을 말한다.
3. 상속 관계 : 상위(부모) 객체를 기반으로 하위(자식) 객체를 생성하는 관계를 말한다.

📌 객체 지향 프로그래밍

  • 만들고자 하는 완성품인 객체를 모델링하고, 집합 관계에 있는 부품 객체와 사용 관계에 있는 객체를 하나씩 설계한 후 조립하는 방식으로 프로그램을 개발하는 기법

객체와 클래스

  • 자바에서는 설계도가 바로 클래스다. 클래스에는 객체를 생성하기 위한 필드와 메소드가 정의되어있고 클래스로부터 만들어진 객체를 해당 클래스의 인스턴스라고 합니다.

클래스 선언

  • 식별자 작성 규칙
    • 하나 이상의 문자로 이루어져야 한다.
    • 첫 글자에는 숫자가 올 수 없다.
    • '$', '_' 외의 특수 문자는 사용할 수 없다.
    • 자바 키워드는 사용할 수 없다.

📌 public 접근 제한자

  • public 접근 제한자는 파일 이름과 동일한 이름의 클래스 선언에만 붙일 수 있다.

new

  • new는 클래스로부터 객체를 생성시키는 연산자이다. new연산자 뒤에는 생성자가 오는데, 생성자는 클래스() 형태를 가지고 있다. new 연산자로 생성된 객체는 메모리 힙(heap) 영역에 생성됨.

📘 2. 필드

📌 필드

  • 객체의 고유 데이터, 객체가 가져야 할 부품, 객체의 현재 상태 데이터를 저장하는 곳
  • 클래스에 포함된 변수
  • 필드와 변수 차이 관련 블로그

필드 사용

  • 필드를 사용한다는 것은 필드값을 읽고 변경하는 작업을 말한다. 클래스 내부의 생성자나 메소드에서 사용할 경우 단순히 필드 이름으로 읽고 변경하면 되지만, 클래스 외부에서 사용할 경우 우선적으로 클래스로부터 객체를 생성한 뒤 필드를 사용해야한다.

도트(.)연산자

  • 도트 연산자는 객체 접근 연산자로 객체가 가지고 있는 필드나 메소드를 사용하고자 할 때 사용된다.

📘 3. 생성자

📌 생성자

  • 생성자(Constructor)는 new연산자로 클래스로부터 객체를 생성할 때 호출되어 객체의 초기화를 담당합니다.

객체 초기화

  • 필드를 촉화하거나 메소드를 호출해서 객체를 사용할 준비를 하는 것을 말한다.

📌 this

  • this는 객체 자신의 참조
  • this.필드 는 this라는 참조 변수로 필드를 사용하는 것과 동일

📌 생성자 오버로딩(overloading)

  • 매개 변수를 달리하는 생성자를 여러 개 선언하는 것을 말한다.

다른 생성자 호출 : this()

  • this()는 자신의 다른 생성자를 호출하는 코드로 반드시 생성자의 첫 줄에서만 허용된다.

📘 4. 메소드

메소드 시그니처

  • 메소드 선언부

profile
안녕하세요. 오연주입니다!👩🏻‍🚀

0개의 댓글