자바 3

동적언어 (JAVA, C++, C#, Python)

목표 저수준 언어와 고수준 언어 컴파일 언어와 동적 언어 JAVA 와 C++ #저수준 언어와 고수준 언어 인간과 가까운 언어를 고수준 언어 (High-level)라 하고 컴퓨터와 가까운 언어를 저수준 언어(Low-level)라고 합니다. 대표적인 저수준 언어는 어셈블리어라고 할 수 있습니다. 위 어셈블리어 코드는 컴퓨터와 가까운 저수준 언어로 기계어 0과 1의 이진수로 이루어진 언어 입니다. 고수준 언어는 우리가 쓰는 C, C++, JAVA 같은 컴파일 언어와 동적 언어들을 들 수 있습니다. 저수준 언어의 장단점 단점으로는 신경쓸게 많고 코드 작성과 관리가 어렵습니다. 그러나 컴퓨터 입장에서는 이해가 빠르므로 성능이 좋지 않은 컴퓨터도 빠른 업무 처리 속도를 보여줍니다. 기계 예를 들어 스마트 가전 같은..

Computer Science 2021.04.05

Java NIO 알아보기

Java NIO > java.nio.file 패키지에서 file I/O, 디렉토리 I/O에 관해서 알아보자. 유저영역 : 실행 중인 프로그램이 존재하는 제한된 영역으로 하드웨어에 직접 접근이 불가. 커널영역 : 반대로 하드웨어에 직접 접근이 가능하고 다른 프로세스를 제어할 수 있는 영역을 말함. 이런 그림을 기반으로 기반의 I/O 프로세스를 정의해보면 다음과 같습니다. ※ 자바 I/O 프로세스 1) 프로세스가 커널에 파일 읽기 명령을 내림. 2) 커널은 시스템 콜[read()]을 사용해 디스크 컨트롤러가 물리적 디스크로부터 읽어온 파일 데이터를 커널 영역안 버퍼에 쏜다. * DMA(Direct Memory Access) : CPU의 도움없이 물리적 디스크에서 커널영역의 버퍼로 데이터를 읽어오는 것 3) ..

Backend/Java 2021.03.01

[Java] 클래스

# 클래스 정의하는 방법 객체지향 컨셉으로 아래 샘플로 각각 필드와 생성자, 메소드에 관해서 설명해보겠다. public class Bicycle { // the Bicycle class has // three fields public int cadence; public int gear; public int speed; // the Bicycle class has // one constructor public Bicycle(int startCadence, int startSpeed, int startGear) { gear = startGear; cadence = startCadence; speed = startSpeed; } // the Bicycle class has // four methods publ..

Backend/Java 2021.01.20