개체(Entity)vs 객체(Object)vs 인스턴스(Instance)vs 클래스(Class)

 

  • 개체(entity): 사고하는 개념적 정의 혹은 단위. 아직 메모리에 할당되지 않은 코드

          ex) type, 메뉴판, 제품카탈로그


  • 객체(Object): 주문한 메뉴가 실체화 된 것.

       실체화하기 위해선 new를 이용하여 메모리에 올린다.

 

       FileOutputStream fout = new FileOutputStream("res/data.txt");

 

       개체 참조변수 객체


  • 인스턴스(Instance): 객체를 실체화 시킨 것. 클래스를 통해 구현한 객체

  • 클래스(Class): 객체를 실체화 하기 위해 만든 설계도

 

'IT > JAVA' 카테고리의 다른 글

[Java] 문자열 (String)  (2) 2023.06.10
[Java] 부동소수점, 고정소수점  (0) 2023.06.08
[Java] 입출력 스트림  (0) 2023.06.08
[Java] Reference Type(참조형식)=참조 변수  (0) 2023.06.08
[Java] 변수(Variable)  (0) 2023.06.08

입출력 스트림

  • Stream 이란?
    배열이나 컬렉션(list, set, map)으로 원하는 값을 얻을 때 for문 도배를 방지하기 위해 나온 개념.

  • 스트림은 '데이터의 흐름’입니다. 배열 또는 컬렉션 인스턴스에 함수 여러 개를 조합해서 원하는 결과를 필터링하고 가공된 결과를 얻을 수 있습니다. 또한 람다를 이용해서 코드의 양을 줄이고 간결하게 표현할 수 있습니다. 즉, 배열과 컬렉션을 함수형으로 처리할 수 있습니다.

 

 

FileOutputStream

  • write() : file에 원하는 것을 써 넣는 것.file에 입력하는 함수? -> 아직 파일에 적용은 안됨.

  • flush(): 스트림 내의 내용을 전달하고 비우는 함수. -> 이 때 적용됨.

     ->물내림 레버 또는 버튼

  • close() : 사용되고 빈 스트림을 종료시키는 함수. 메모리 낭비를 방지하기 위해 종료 선언함. 파이프 뚜껑 / 우물뚜껑

 

출력 스트림의 write메서드와 print 메서드의 차이

Print가 syso의 print라고 가정하면 간편성

write()는 file에, print()는 콘솔에 출력 가능

Print는 라이브러리를, write는 api?

Write는 import 사용

 

Reference Type(참조형식) = 참조 변수

  • 기본 타입 : byte,short,char,int,long,float,double,boolean 8개의 타입을 말한다. 기본 타입변수에는 값 자체가 저장된다.

 

    • 기본 타입 변수의 예
1
2
int age=25;
double price=100.5;
cs

 

  • 참조 타입 : 기본 타입을 제외하고 ‘배열’, ‘열거’, ‘클래스’, ‘인터페이스’ 등을 말한다. 참조 타입의 변수에는 객체(메모리)의 번지가 저장된다.

 

    • 참조 타입 변수의 예
1
2
String name="김자바";
String hobby="독서";
cs

메모리 : Static, heap, stack 으로 이루어짐.



1. 메모리 스택(Stack)영역

 

기본 타입 변수 -> 기본 타입 변수는 직접 값을 저장하고 있다.

예) Age 는 25/ price 100.5

 

참조 타입 변수 -> 힙(heap) 영역의 String 객체 번지 값을 가지고 있다.

예) name은 100번지/ hobby 200번지

 

2. 메모리 힙(heap)영역

 

참조 타입 변수 존재

예) 100번지 -> 김자바/ 200번지 -> 독서






변수(Variable)

  • 변수란? 저장공간이다!
    변할 수 있는 데이터를 임시적으로 저장하고 이를 사용하기 위한 수단으로,
    값을 저장할 수 있는 메모리 공간에 사람이 식별할 수 있게 이름을 붙여 데이터를 저장하는 공간이다.

  • 변수 선언이란? 변수를 사용하기 전 변수를 사용하겠다고 컴퓨터에게 알리는 것!
    변수를 사용하려면 먼저 변수를 선언해야 한다.

    변수를 선언하면 메모리의 빈 공간에 ‘변수의 데이터 타입’에 알맞은 크기의 저장 공간이 확보되며, 앞으로 이 저장공간은 ‘변수이름’을 통해서 사용하게 된다.

    따라서, 변수를 선언할 때는 ‘저장하고자 하는 데이터의 타입’과 ‘변수이름’을 함께 작성해주어야 한다. (변수 타입과 값이 맞지 않으면 제대로 저장될 수 없다.)

    (EX) int   a // 저장하고자 하는 데이터 타입 = int 정수형  / 변수이름 = a

  • 변수 초기화란? 값을 처음으로 할당하는 것
    변수는 선언한 후 값을 할당해주어야 사용할 수 있는데, 가장 처음 변수에 값을 할당하는 것을 초기화라고 한다. 

  • 변수 명명 규칙
    1. 대소문자가 구분되며 길이에 제한이 없다.

    2. 예약어(keyword, reserved word)는 사용할 수 없다.
    (EX) class, if, new 등.. 자바에서 이미 기능을 하고 있는 단어들

    3. 숫자로 시작할 수 없다.

    4. ‘_’와 ‘$’를 제외한 특수문자는 사용할 수 없다.

    5. 띄어쓰기가 들어갈 수 없다.

 

'IT > JAVA' 카테고리의 다른 글

[Java] 입출력 스트림  (0) 2023.06.08
[Java] Reference Type(참조형식)=참조 변수  (0) 2023.06.08
[Java] 자바의 기본형(Primitive Type) 8가지  (0) 2023.06.08
[Java] JDK와 JRE의 구성요소  (0) 2023.06.08
[Java] 변수란? (Variable)  (0) 2023.06.01

자바의 기본형(Primitive type) 8가지

계산을 위해 실제 값을 저장 (타입선언 시 모두 다 소문자로 시작한다!)

 

1. 진리값

타입 메모리 크기(byte) 기본값 데이터 표현 범위
boolean 1
(하지만, 정식으로 크기를 알려주고 있지 않음)
false true, false

 

2. 정수값

타입 메모리 크기(byte) 기본값 데이터 표현 범위
byte 1 0 -128~127
short 2 0 -32,768~32,787
int
(default)
4 0 -2,147,483,648
~2,147,483,647(대충 20억)
long 8 0L -9,223,327,036,854,775,808
~9,223,372,036,854,775,807

※ 2, 8, 10, 16진법의 개념이 들어있음 (EX) 0b11010, 032, 26, 0x1a, 26L, 0x1aL

 

3. 실수값

타입 메모리 크기(byte) 기본값 데이터 표현 범위
float 4 0.0F (3.4X1038)~(3.4X1038)의 근사값
double
(default)
8 0.0 (1.7X10308)~(1.7X10308)의
근사값

※ 지수형으로 표현할 수 있다.

(EX) 123.4, 123.4f, 123.4d, 1.234e2, 1.234e2f, 1.234e2d

 

4. 문자값

타입 메모리 크기(byte) 기본값 데이터 표현 범위
char 2 ‘\u0000’ 0~65,535

※ 기재하려는 값 앞 뒤에 싱글쿼터(‘’)와 함께 표기, 형 변환시 자주 사용(문자->숫자)

※‘\u0000’ = ‘NULL’

 

'IT > JAVA' 카테고리의 다른 글

[Java] Reference Type(참조형식)=참조 변수  (0) 2023.06.08
[Java] 변수(Variable)  (0) 2023.06.08
[Java] JDK와 JRE의 구성요소  (0) 2023.06.08
[Java] 변수란? (Variable)  (0) 2023.06.01
[Java] 상수와 리터럴 (Constant & literal)  (0) 2023.06.01

JDK와 JRE의 구성요소

 

  • JDK(Java Development Kit) 자바 개발 키트 (개발자용)

    - 구성요소: JRE + 개발자 도구
    - 개발자들이 자바로 개발하는 데 필요한 라이브러리들과 컴파일러(javac), jdb(디버깅), JRE, JVM등의 개발 도구들이 포함된 개발 키트
    - 자바로 만들어진 프로그램을 실행시키는데 필요한 라이브러리들과 각종 API, 그리고 자바 가상 머신(JVM)이 포함되어 있다.
    - 개발이 필요 없다면 실행할 수 있는 환경만 필요하다면, JRE를 다운로드 받으면 된다.



  • JRE(Java Runtime Environment) 자바 실행 환경 (일반유저 가능)

    - 구성요소: JVM + 라이브러리 클래스
    - JRE는 JDK에 포함되어 있다.



  • JDK와 JRE의 차이


- Java로 프로그램을 직접 개발하기 위해서는 JDK가 필요
- Java로 만들어진 프로그램을 실행시키려면 JRE가 필요

 

'IT > JAVA' 카테고리의 다른 글

[Java] 변수(Variable)  (0) 2023.06.08
[Java] 자바의 기본형(Primitive Type) 8가지  (0) 2023.06.08
[Java] 변수란? (Variable)  (0) 2023.06.01
[Java] 상수와 리터럴 (Constant & literal)  (0) 2023.06.01
[Java] 자바란?  (0) 2023.06.01

+ Recent posts