Java - Class

HY SONG·2023년 2월 26일
0

Java

목록 보기
3/15

Class란 무엇인가?

Class의 역할

  • 객체 지향 프로그래밍에서 가장 기본적인 단위
  • 객체를 생성하기 위한 틀이나 설계도 역할

Class의 구성 요소

필드

  • 클래스에 포함된 변수
  • 객체의 속성을 정의

메서드

  • 특정 작업을 수행하는 일련의 명령문들의 집합
  • 객체가 수행하는 동작을 정의

생성자

  • 객체를 생성할 때 호출되는 특별한 메서드
  • 객체가 생성될 때 필드 초기화 또는 객체 초기화하기 위한 작업을 수행

예시

public class Person {
    // 필드 - 속성
    private String name;
    private int age;
    private String gender;

    // 생성자
    public Person(String name, int age, String gender) {
        this.name = name;
        this.age = age;
        this.gender = gender;
    }

    // 메서드 - 동작
    public void walk() {
        System.out.println(name + " is walking.");
    }

    public void talk() {
        System.out.println(name + " is talking.");
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    public String getGender() {
        return gender;
    }
}

Class의 상속

상속이란?

이미 정의된 클래스에서 코드를 재사용하여 새로운 클래스를 만드는 기능

상속을 하는 이유

  • 기존 클래스의 필드와 메서드를 상속받을 수 있음
  • 부모 클래스의 속성과 동작을 그대로 사용하면서 자식 클래스에서 추가적인 속성과 동작을 정의할 수 있음

상속을 하는 방법

"extends" 키워드를 사용하여 구현

예시

부모 클래스

public class Tree {
    private int height;

    public Tree(int height) {
        this.height = height;
    }

    public int getHeight() {
        return height;
    }

    public void grow() {
        System.out.println("The tree is growing");
    }
}

자식 클래스

public class OakTree extends Tree {
    private int age;

    public OakTree(int height, int age) {
        super(height);
        this.age = age;
    }

    public int getAge() {
        return age;
    }

    public void shedLeaves() {
        System.out.println("The oak tree is shedding leaves");
    }
}

패키지(Pakage)

패키지(Pakage)란?

클래스, 인터페이스, 열거형 등의 관련된 항목들을 모아서 그룹화한 것

패키지의 역할

  • 클래스의 이름 충돌을 막아주고, 코드의 가독성을 높여준다
  • 접근 제어자를 이용하여 패키지 외부에서 접근할 수 없도록 설정할 수 있다

Java Class를 이용해 코드의 재사용성을 높일 수 있으며, 비슷한 속성과 동작을 가진 객체들을 간편하게 생성, 관리할 수 있습니다.

0개의 댓글