본문 바로가기
Programming/Java

[Java] 1/18 강의 정리 (JVM, JDK, 연산자, 배열, 객체지향)

by jionee 2021. 1. 18.
SMALL

Java 개요

Introduction

- 객체 지향형 프로그램 언어

- 하나의 코드로 다양한 환경에서 실행할 수 있는 환경을 제공하고, 분산 환경을 지원

- 자바 소스코드는 컴파일러에 의해 바이트 코드가 새엇되고, 자바 가상 머신에 의해 해석되고 실행됨

(인터프리터)

 

JVM

메모리를 관리

메모리는 스택, 메소드, 힙 영역 등으로 관리

 

JDK 다운로드

OpenJDK

AdoptOpenJDK

 

변수

- 변수를 사용하는 이유 ? 재사용하기 위해서

- 대소문자를 구분하고, 하나 이상의 글자로 길이 제한 없음

- 특수문자는 '$'와 '_'만 사용 가능

- 문자나  '$'와 '_' 로만 시작 가능

- 예약어는 식별자로 사용 불가능

- final 키워드로 상수를 선언

 

자료형

- 기본형과 참조형으로 구분함

- 기본형 : char, byte, short, int, long, float, long, boolean

- 참조형 : String, Date, BigDecimal 등

- 형변환 : 값의 크기에 따라 명시적, 묵시적 형 변환을 이용할 수 있음

 

***BigDecimal은 Heap 영역에 저장됨 사이즈가 유동적***String을 Integer 형으로 변형 : Integer.valueOf 메소드

 

 

컴포넌트 프로그래밍컴포넌트는 프로그래밍의 한 부분을 의미하며 재사용이 가능한 최소 단위를 말한다. 그래서 객체지향언어를 사용할 때 자주 사용되며 재사용이 가능하기 때문에 컴포넌트 단위로 분류하거나 이동 가능하다는 특징이 있다.

 

 

연산자

- a = ++1 는 a= 2, b = 1++는 b=1

 

 

제어문

 

for문 별찍기 숏코드

 

 

배열

 

객체지향형

- 대부분의 프로그래밍 대상은 데이터와 기능으로 단순화해 표현할 수 있음

- 프로그래밍 대상을 분석해 공통점을 찾아내고 단순화해 데이터와 기능으로 구체화하는 과정을 추상화 라고 함

- 추상화 결과로 데이터인 명사와 기능인 동사가 산출

- 프로그램 구조를 데이터와 기능을 가지고 있는 객체들의 상호관계로 표현

- 프로그래밍 대상을 데이터를 기준으로 관계를 분석하는 시각이 필요하고, 복잡한 구조의 프로젝트에 적합

- 관계형 데이터 베이스의 관점과 유사

 

객체지향형 특징

- 추상화

- 은닉성 : 관련된 기능과 데이터를 변수와 함수로 분류해 클래스 단위로 묶는 것

클래스 기능에 접근을 위한 인터페이스를 제공해 클래스 내부를 숨기는 것을 의미하기도 함

- 상속성 : 이미 존재하는 클래스 정의를 확장해 새로운 파생클래스를 생성할 수 있음

- 다형성 : 이미 존재하는 정의를 확장 및 재정의할 수 있음 주로 상속, 오버로딩, 오버라이딩으로 구현될 수 있음

 

댓글