[JAVA] 객체지향(1)

ho's·2022년 3월 30일
0
post-thumbnail

위 글은 22.3.29(화) 김성박 선생님의 강의를 정리한 내용입니다.

클래스

클래스는 필드(Field)와 메소드(Method)를 가진다.
필드는 클래스의 속성이라고 말할 수 있다.
메소드는 클래스의 기능이라고 말할 수 있다.

public class
protected class
private class

위와 같이 class 앞에 붙은 것을 접근제어자 라고한다.

class를 만드는 형식을 보면

접근제어자 class 클래스이름 {
	필드들;
    
    생성자들;
    
    메소드들;
}

필드,생성자,메소드가 무엇인지는 앞으로 배우면서 정리를 하겠다.

자판기를 그려보자!

자판기의 동작은 무엇이 있을까

  • 동전 넣기
  • 잔액 보여주기
  • 물건 선택버튼 클릭하기
  • 물건 뱉기

자판기는 어떤 객체로 구성되어 있을까

  • 액정표시장치
  • 동전통
  • 상품배출기
  • 상품케이스
  • 상품
  • 동전
  • 동전배출기
    등등등

자판기 클래스를 만들어보자!


위와같이 VendingMachineMain, VendingMachine 클래스를 2개 만들었고,
VendingMachineMain 클래스에서 VendingMachine을 참조하는 참조변수 vm1에 인스턴스를 생성해서 담았다!

이것만은 알자!

  1. static이 붙은 메소드는 클래스 메소드이다
  2. 인스턴스를 만들지 않아도 사용 가능하다!
  3. 메모리에 올라가 있다.

인스턴스를 만드는 3가지 방법

  1. new 연산자와 생성자를 이용하여 인스턴스를 만드는 방법
  2. 클래스 로더를 이용하는 방법
  3. 메모리에 있는 인스턴스를 복제(clone)하여 만드는 방법

객체지향의 핵심은 무엇일까

의도는 "메세징"이다.
훌륭하고 성장 가능한 시스템을 만들기 위한 핵심은 모듈 내부의 속성과 행동이 어떤가보다, 모듈이 어떻게 커뮤니케이션하는지에 달려있다.
Alan Curtis Kay


메소드 선언 방법

[접근제한자] [static] 리턴type 메소드이름([매개변수,...]){
	.....
}

여기서 [ ] 부분은 생략이 가능한 부분이다.
우리가 잘 알고 있는 메인 메소드에 비교해보자.

간단한 자판기클래스를 만들어보자!

profile
그래야만 한다

0개의 댓글