자바/자바 복습 되새김질

자바 복습. 클래스Class

Tomitom 2022. 11. 2. 14:03
반응형

http://www.tcpschool.com/java/java_class_intro

 

코딩교육 티씨피스쿨

4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등

tcpschool.com

지식의 출처 : 티피씨스쿨

 

객체 지향 프로그램이란 우리가 인식하는 사물과 같은 객체의 행동을 구체화 하는 형태의 프로그래밍을 객체 지향 프로그래밍이라고 한다. 

이 때 객체를 만들어내기 위한 설계도를 클래스Class라고 한다. 

 

객체의 상태를 나타내는 {} 필드, 객체의 행동을 나타내는 메소드() 로 구성. 

필드란 클래스에 포함된 변수를 의미하고, 메소드란 특정 작업을 수행하기 위한 명령문의 집합

 

클래스를 사용하기 위해서는 클래스 타입의 객체 선언 필요. 

객체를 선언 -> 해당 클래스 타입의 객체, 인스턴스 붕어빵 생성. 

 

하나의 클래스에서 여러 인스턴스 생성 가능. 

 

클래스(class)

- 차(Car) : 설계도

 

필드(field)

- car.modelName = "람보르기니"

- car.modelYear = 2016

- car.color = "주황색"

- car.maxSpeed = 350

 

메소드(method)

- car.accelerate()

- car.brake()

 

인스턴스(instance)

- 내 차(myCar) : 설계도에 의해 생산된 차량

- 친구 차(friendCar) : 설계도에 의해 생산된 또 다른 차량

 

하나의 클래스에 같은 이름의 메소드를 둘 이상 정의할 수 없음. 

메소드 오버로딩을 통해 같은 이름의 메소드를 중복하여 정의할 수는 있음.

메소드 오버로딩 : 매개변수의 개수 혹은 타입을 다르게 해서 같은 이름의 또 다른 메소드를 작성하고 컴파일이 그에 가까운 매개변수를 로딩함. 

 

 

 


클래스의 구성요소

 

1. 생성자

생성된 객체의 필드(변수)를 초기화해줌.

클래스로 객체를 생성하면 해당 객체는 메모리에 즉시 생성. 

객체의 생성과 동시에 변수를 원하는 값으로 초기화할 수 있는 생성자 메소드가 있음. 

생성자의 이름은 해당 클래스의 이름과 동일해야 함 

 

 

https://blue-dot.tistory.com/68

 

자바 기초 공부 일지 23. 클래스 상속과 생성자

● 상속은 가지고 있는 것을 물려주는 것입니다. 자바에서 상속은 클래스가 가지고 있는 데이터와 기능을 주는 문법입니다. 이것은 클래스 안에 있는 코드의 재활용이라기 보다는 연관된 일련

blue-dot.tistory.com

class Car {                    // 클래스 이름

    private String modelName;  // 필드

    private int modelYear;     // 필드

 

    Car(String modelName, int modelYear) { // 생성자

        this.modelName = modelName;

        this.modelYear = modelYear;

    }

 

    public String getModel() { // 메소드

        return this.modelYear + "년식 " + this.modelName + " " + this.color;

    }

}

 

 

2. 필드 

클래스에 포함된 변수. 

클래스 내에서 선언된 위치에 따라 구분함. 

- 클래스 변수 

- 인스턴스 변수 

- 지역 변수 

 

 

3. 메소드 

특정 작업을 위한 명령문의 집합.

 


클래스 사용법

 

1. 클래스 선언 

접근제어자 class 클래스이름 {

    접근제어자 필드1의타입 필드1의이름;

    접근제어자 필드2의타입 필드2의이름;

    ...

    접근제어자 메소드1의 원형

    접근제어자 메소드2의 원형

    ...

};

 

출처 : http://www.tcpschool.com/java/java_class_declaration

접근 제어자는 정보 은닉을 위한 키워드로 public 멤버는 모든 객체에 접근할 수 있지만 private 멤버는 해당 객체 내의 멤버 변수나 메소드만이 접근할 수 있다. 

 

2. 인스턴스 생성

 

참조변수 선언 

Car myCar;

클래스이름 참조변수이름; 

myCar = new Car() ; 

new 키워드로 인스턴스 생성 후 참조 변수에 저장해서 사용

 

-> Car myCar = new Car();  동시에 생성도 가능 

 

 

반응형