[Java] 객체지향 프로그래밍

2018. 5. 30. 17:04・Backend/Java

#1 클래스와 객체


  • 추상화(Abstraction)

구체적인 모든사실이 아닌, 전형적이고 필요한 부분만 발췌해서 사물을 이해하고 표현하는 것


  • 클래스(class)

- 객체를 만들기 위한 모형 / 틀

- 공통적 특징을 가지는 객체들을 추상화 하기위한 수단

- 객체의 상태는 (데이터)필드, 객체의 행위는 메소드로 구현

- 객체는 특정 클래스의 인스턴스


  • 인스턴스 : 실체화 된 것 / 구체화 된 것 / 어떤 틀을 통해서 만들어져 존재하는 것

  • 프로그램 작성 시, (문제에서 다루어야 할 대상인)객체를 클래스로 추상화시켜 모델링하고, 프로그램에 표현

  • 객체는 클래스 틀을 통해 생성되고, 클래스 안의 데이터필드로 객체 상태를 표현

  • 객체는 클래스에서 정의된 메소드 실행, 메소드 실행 함으로써 객체 자신의 상태를 변경할 수 있음


#2 객체지향 프로그램


  • Java 프로그램

Java프로그램 구성 기본단위 : 클래스

데이터(필드)와 알고리즘(메소드)이 클래스에 캡슐화 되어있음

객체들 생성된 후 객체들 간 상호작용으로 프로그램 동작


#3 C vs. Java


(성적처리 C 프로그램)



실행 순서 : main() 실행 → input_grade() 실행 → output_grade() 실행



(성적처리 Java 프로그램)



- 다루고자 할 데이터(성적)을 클래스로 처리

- 완전객체지향 프로그램은 기본 구성단위가 클래스

- 영어 점수 입력 시, 점 표기법 사용하여 데이터 값에 접근함

저작자표시 비영리 (새창열림)

'Backend > Java' 카테고리의 다른 글

[Java] Hello.java  (0) 2018.05.30
[Java] Java 플랫폼  (0) 2018.05.30
[Java] Java 언어와 Java 프로그램  (0) 2018.05.30
'Backend/Java' 카테고리의 다른 글
  • [Java] Hello.java
  • [Java] Java 플랫폼
  • [Java] Java 언어와 Java 프로그램
dev.hyejin
dev.hyejin
  • dev.hyejin
    혜진의 개발자 성장블로그
    dev.hyejin
  • 전체
    오늘
    어제
    • 분류 전체보기 (89)
      • 2024 데브캠프 (2)
      • 회고 (1)
      • 이슈해결 (3)
      • 기초학습 (13)
      • Frontend (20)
        • JavaScript (3)
        • Git, GitHub (3)
        • HTML, CSS (14)
      • Backend (8)
        • Database (4)
        • Java (4)
      • CS (16)
        • Network (10)
        • Algorithm (6)
      • Eng (16)
      • Tips (5)
  • 인기 글

  • 태그

    ER모델
    상대경로
    GitHub
    객체
    box-sizing
    border-box
    점근성능
    절대경로
    런타임
    시간복잡도
  • hELLO· Designed By정상우.v4.10.3
dev.hyejin
[Java] 객체지향 프로그래밍
상단으로

티스토리툴바