전체 글 44

[Java] 배열 (Array) 개념 및 정리

배열(Array)이란?동일한 타입의 값들을 하나의 묶음으로 묶은 자료 구조를 의미한다. 즉, 값들이 같은 의미를 지니면서 서로 연관성이 있을 때, 이들을 하나의 덩어리로 묶을 수 있으며, 이렇게 묶인 값들의 집합을 배열이라고 한다. 배열이 가진 각 값들을 배열의 요소라고 한다. 그리고 배열의 각 요소는 0에서부터 시작하는 번호를 부여받는데, 이처럼 각 요소가 부여받는 순번을 인덱스(index)라고 한다. 예를 들어 길이가 31인 배열을 생성하면 맨 첫 번째 요소의 인덱스는 0이며, 두 번째 인덱스는 1, 마지막 31번째 요소의 인덱스는 30이 된다. 배열을 선언했을 경우 요소들은 타입에 맞게 자동으로 초기화된다.배열의 타입초기값char'\u0000'byte, short, int0long0Lfloat0.0..

Language/Java 2022.10.01

[Java] BufferedReader와 BufferedWriter 정리

BufferedReader와 BufferedWriter란?BufferedReader와 BufferedWriter은 이름처럼 버퍼를 이용해서 읽고 쓰는 함수이다. 이 함수는 버퍼를 이용하기 때문에 입출력의 효율이 좋아진다. BufferedReader는 Scanner와 유사하고 BufferedWriter는 System.out.println( )과 유사하다.두 기존에 쓰던 Scanner와 System.out.println( ) 보다 속도 측면에서 훨씬 빠르다. 하지만 BufferedReader는 Enter만 경계로 인식하고 받은 데이터가 String으로 고정되기 때문에 입력받은 데이터를 가공하는 작업이 필요하다.// 사용하기 위해 import 선언import java.io.BufferedReader;impor..

Language/Java 2022.10.01

[Network] TCP/UDP 개념 및 정리

TCP / UDP란?TCP / UDP는 OSI 표준모델과 TCP/IP 모델의 전송 계층에서 사용되는 프로토콜이다. TCP/IP 4계층 모델을 기준으로 IP 프로토콜의 계층인 인터넷 계층의 상위에서 동작을 한다. 또한 2계층에서 동작하는 IP와 4계층에서 동작하는 애플리케이션을 중개하는 역할을 한다. TCP와 UDP는 포트 번호를 이용하여 주소를 지정하는것과 데이터 오류 검사를 위한 체크섬이 존재하는 두 가지 공통점이 있지만 TCP는 통신 신뢰성을 높이는 기능이 구현되어 있고 UDP는 신뢰성을 높이는 기능은 없지만 높은 속도와 효율성을 제공한다. ※ 자주 사용되는 포트 번호Port NoProtocol NameTransport Protocoldescription80HTTPTCP웹서버 접속443HTTPSTCP..

Network 2022.10.01

[Network] TCP/IP 4 계층 (TCP/IP 4 Layer) 개념 및 정리

TCP/IP 4 계층이란?OSI 7 계층보다 먼저 나온 규격이지만 더 많이 활용된다.계층 기능1 계층 : 네트워크 액세스 계층(Network Access Layer)컴퓨터를 물리적으로 네트워크에 연결해서 기기 간에 전송이 가능하게 한다.물리적인 주소로 MAC을 사용한다.에러 검출 기능(Detecting Errors), 패킷의 프레임화(Framing Packets)LAN, 패킷망 등에 사용된다.프로토콜 : Ethernet, wifi 2 계층 : 인터넷 계층(Internet Layer)네트워크 주소를 기반으로 최종 목적지까지 정확하게 데이터를 전송한다.통신 노드 간의 IP 패킷을 전송하는 기능과 라우팅 기능을 담당한다.프로토콜 : IP, ICMP, ARP, RARP 3 계층 : 전송 계층(Transport ..

Network 2022.09.30

[Network] OSI 7 계층 (OSI 7Layer) 개념 및 정리

OSI 7 계층이란?네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것을 의미하며 국제표준화기구(ISO)에서 네트워크 간의 호환을 위해 OSI 7 계층이라는 표준 네트워크 모델을 만들었다. 이렇게 정의하는 이유는 통신이 일어나는 과정을 단계별로 파악하기 위함과 통신 과정 중에 이상이 생겼을 때 다른 단계의 장비나 소프트웨어 등을 건드리지 않고 장애를 일으킨 단계에서 문제를 해결할 수 있기 때문이다.계층 기능1 계층 : 물리 계층(Phsical Layer)주로 전기적, 기계적, 기능적인 특성을 이용해서 데이터를 전송한다. 단지 데이터를 전달하려고 할 뿐 데이터가 무엇인지 어떤 에러가 있는지 등에는 전혀 신경 쓰지 않고 단순히 전기적인 신호로 변환해서 주고받는 기능만 한다.데이터의 전송 단위는 비트(bit..

Network 2022.09.30

[Network] LAN과 WAN 정리

근거리 통신망 (LAN)LAN은 Local Area Network의 약자로 사용자가 포함된 지역 네트워크를 의미한다.근거리 통신망, 로컬 영역 네트워크 구내 정보 통신망은 네트워크 매체를 이용하여 집, 사무실, 학교 등의 건물과 가까운 지역을 한데 묶는 컴퓨터 네트워크이다. 이더넷과 와이파이는 근거리 통신망(LAN)에 사용하기 위해 흔히 쓰이는 기술이다.이러한 LAN을 연결하는 선을 우리는 LAN 케이블이라고 부른다. 이렇게 수많은 LAN들이 모여 세계의 네트워크를 구성하는 WAN이 구성된다. 광역 통신망 (WAN)WAN은 Wide Area Network의 약자로 LAN과 LAN 사이를 광범위한 지역 단위로 구성하는 네트워크를 의미한다.광역 통신망은 지역, 국가, 세상 범위까지 구성된 컴퓨터 네트워크이다..

Network 2022.09.30

[Java] 열거형 (enum) 정리

열거형(enum)이란?여러 상수들을 보다 편리하게 선언할 수 있도록 만들어졌다. 열거형은 서로 연관된 상수들의 집합을 의미한다.상수란 변하지 않는 값을 의미하며 final 키워드를 사용하여 선언할 수 있다. 열거형은 여러 상수들을 보다 편리하게 선언하고 관리할 수 있으며, 상수 명의 중복을 피하고, 타입에 대한 안정성을 보장한다. 훨씬 더 간결하고 가독성이 좋은 코드를 작성할 수 있다. 열거형 사용enum 열거형 이름 {상수1, 상수2, ...}enum Seasons { SPRING, SUMMER, FALL, WINTER }enum Seasons { SPRING, //정수값 0 할당SUMMER, //정수값 1 할당FALL, //정수값 2 할당WINTER //정수값 3 할당}public class Enu..

Language/Java 2022.09.29

[Java] 재귀 함수 (Recursion Function) 정리

재귀 함수(Recursion)란?특정 함수 내에서 자기 자신을 호출하는 함수이다. 재귀 함수를 잘 활용하면 반복적인 작업을 해야 하는 문제를 좀 더 간결하게 풀어낼 수 있다.public void recursion() { System.out.println("This is"); System.out.println("recursion!"); recursion();} 재귀 함수 사용 조건문제의 크기를 점점 작은 단위로 쪼갤 수 있어야 한다.재귀 호출이 종료되는 시점이 존재해야 한다. 재귀 함수의 장점불필요하게 여러 개의 반복문을 사용하지 않기 때문에, 코드가 간결해지고, 수정이 용이하다.변수를 여러 개 사용할 필요가 없다. 재귀 함수의 단점코드의 흐름을 직관적으로 파악하기 어렵다.반복하여 메서드를 호출하며 ..

Language/Java 2022.09.29

[Java / 자료구조] 이진 탐색 트리 (Binary Search Tree) 정리

이진 탐색 트리 (Binary Search Tree)란? 자식 노드가 최대 두 개인 노드들로 구성된 트리이다. 이 두 개의 자식 노드는 왼쪽 자식 노드와 오른쪽 자식 노드로 나눌 수 있다. 이진 트리는 자료의 삽입, 삭제 방법에 따라 정 이진 트리(Full binary tree), 완전 이진 트리(Complete binary tree), 포화 이진 트리(Perfect binary tree)로 나뉜다정 이진 트리(Full binary tree) : 각 노드가 0개 혹은 2개의 자식 노드를 갖는다.완전 이진 트리(Complete binary tree) : 정 이진 트리이면서 완전 이진 트리인 경우이다. 모든 리프 노드의 레벨이 동일하고, 모든 레벨이 가득 채워져 있는 트리이다.포화 이진 트리(Perfect ..

Language/Java 2022.09.28

[Java] Map 정리

Map이란?Map 인터페이스는 키(Key)와 값(Value)으로 구성된 객체를 저장하는 구조를 가지고 있다. 여기서 이 객체를 Entry 객체라고 하는데, 이 Entry 객체는 키와 값을 각각 Key 객체와 Value 객체로 저장한다. Map 인터페이스를 구현한 클래스에는 HashMap, HashTable, TreeMap, SortedMap 등이 있다.Map은 키는 중복 저장될 수 없지만, 값은 중복 저장이 가능하다. 키의 역할이 값을 식별하는 것이다.만약 저장된 키와 동일한 키로 값을 저장하면, 기존의 값이 새로운 값으로 대치된다.  Map 인터페이스를 구현한 클래스에서 공통적으로 사용 가능한 메서드put(Object key, Object value)주어진 키로 값을 저장한다. 해당 키가 새로운 키일 ..

Language/Java 2022.09.28
반응형