Notice
Recent Posts
Recent Comments
Link
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

개발새발

복습 본문

자바

복습

개발하는후추 2022. 7. 27. 23:36

오늘은 하루종일 복습만 했다 다시보면서 정리된 개념도 있고 아닌것도 많다 근데 이제 딱히 뒤처진다고 생각하지 않기로 했다 나보다 더 힘들어 하는 사람도 있고 4년동안 국시만 위해서 공부해본적도 있는데 1년 못하겠냐는 생각이 든다

OOP 객체지향 프로그래밍 기초

객체

  • 주변에서 흔히 볼 수 있는 ‘모든 실재하는 어떤 대상’
  • 눈에 보이지 않는 어떤 논리나 개념 같은 것들도 객체
  • 우리가 보고 느끼고 인지할 수 있는 모든 것을 의미

객체지향

  • 실제 세계는 이러한 객체들로 구성되어 있으며, 발생하는 모든 사건들은 이 객체들 간의 상호작용을 통해 발생한다
  • 구현에 필요한 객체를 파악하고 각가가의 객체들의 역할이 무억인지를 정의하여 객체들 간의 상호작용을 통해 프로그램을 만든다
  • 객체는 클래스(class)라는 틀에서 생겨난 인스턴스(instance)이다

객체지향적 프로그래밍

  • “프로그래밍에서 필요한 데이터를 한 데 모아 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용”을 통해 특정 기능을 구성하는 프로그래밍
  • 실제 사물의 속성(state)과 기능(behavior)을 분석한 후에 이것을 프로그래밍의 변수와 함수로 정의함으로 실제 세계를 최대한 컴퓨터 프로그래밍에 반영하고자 하는 시도
  • 특정 사물이 가지는 속성과 기능을 하나의 독립적인 레고 조각으로 만들고, 이를 하나씩 하나씩 결합하여 원하는 결과물을 만들어가는 과정

식별자 존재 : 객체를 구별하는 유일한 식별자를 갖는다
상태 존재 : 자료구조에 해당하는 상태를 갖는다
메서드 존재 : 연산을 수행할 수 있는 행위에 해당하는, 잘 정의된 메서드를 갖는다
클래스 선언 및 사용 : 객체지향 프로그램에서 객체는 비슷한 객체의 구조와 행위가 클래스로 선언되어 사용된다

클래스 (class)

자동차 —> 승용차, 버스, 트럭, 등등
틀(설계도) —> 설계도를 이용하여 만들어 낸것

  • 공통된 특성을 가진 객체를 추상화하고 집단화하여 나타낸것
  • 클래스는 개념적인것 //// 객체는 구체적인것

객체들이 갖는 객체의 변수(valiable) , 메소드(method)의 집합

한 클래스를 기준으로 상위클래스(부모클래스)라고 하며, 하위 클래스(자식클래스)라고 한다

클래스로부터 생성된 객체를 인스턴스(instance)라고 한다

인스턴스(instance)

하나의 클래스에서 생성된 객체 즉, 클래스가 구체화되어 클래스에서 정의된 속성과 성질을 가진 실제적인 객체로 표현

Ex)
사용자라는 클래스를 정의하고 홍길동이라는 객체를 생성할 경우, 홍길동이라는 객체는 사용자라는 클래스의 인스턴스

메소드(method)

객체지향 시스템이 갖는 전통적인 시스템 함수 또는 프로시저에 해당하는 연산기능

객체를 실행할 수 있도록 하는 연산의 집합

클래스 내부에서 특정한 작업을 처리하는 역할 // 입력값이 있을 때 그 값을 받아서 처리한 후 결과 갑이 있으면 되돌려준다

타입

변수

  • 변수는 무엇무엇이다 직접적으로 의미를 아려주면 ——— 기본 타입의 데이터
  • 변수는 132페이지에 설명되어 있다 ——— 참조 타입 데이터

기본형 8개
boolean, char, byte, short, int, long, float, double

참조형
기본형을 제외한 나머지(String, System등)

Date today = new Date();

Date = 참조형 변수

new Date = 새로운 객체를 생성

today = 새로운 객체의 주소를 담은 변수

상수

  • 변수와 마찬가지로 데이터를 저장할 수 있는 메모리 공간
  • 변수와 다른점은 프로그램이 실행되는 동안 메모리에 저장된 데이터를 변경할 수 없다

final int AGES = 30;

final 을 써서 상수선언 하고 상수는 선언과 동시에 초기화해야됨

자바에서 상수는 기본적으로 대문자로 씀

literal 리터럴

  • 그 자체로 값을 의미하는 것
  • 변수와 상수와 달리 데이터가 저장된 메모리 공간을 가리키는 이름을 가지고 있지 않는다

배열(array)

  • 같은 타입의 변수들로 이루어진 유한 집합
  • 각각의 값을 배열요소(element), 배열에서의 위치를 가리키는 숫자 인덱스(index)라고 한다
  • 타입[] 배열이름 = new 타입[배열길이]
    ex) int[] num = new int[3]

선언과 동시에 초기화

ex) int[] num = new int[]{70,80,90} /// ex) int[] num = {70,80,90}

'자바' 카테고리의 다른 글

# 내부 클래스  (0) 2022.07.27
#제네릭 #컬렉션 프레임워크  (0) 2022.07.27
배운걸로 혼자 코드 짜보기  (0) 2022.07.27
#다형성 #추상화 #final #인터페이스  (0) 2022.07.27
#생성자  (0) 2022.07.27
Comments