분류 전체보기 (330) 썸네일형 리스트형 헷갈리는 용어 매개변수(parameter) : 메소드의 정의 부분에 나열되어있는 변수들전달인자(argument) : 메소드를 호출할 때 전달되는 실제 값을 의미한다. java Overflow(오버플로우) Overflow(오버플로우)변수의 선언된 데이터 유형 범위를 벗어난 값을 할당 할때 발생한다. Java에서는 계산 결과가 최댓값을 넘거나, 최솟값보다 작을 경우 음수는 양수로, 양수는 음수로 바뀌는 문제가 발생한다.이를 오버플로우라고 한다. 정수형의 오버플로우오버플로우 :자료형이 표현할 수 있는 범위 중 최댓값을 벗어날 경우 발생한다.최댓값 초과 시 -> 해당 타입의 최솟값으로 값이 순환한다. 예시코드public static void main(String[] args) { int value = 10; int maxInt = Integer.MAX_VALUE; System.out.println(value + 1); System.out.println(maxInt + 1);} 아.. 포트 번호의 구조 모두의 네트워크 책을 읽고 정리하고 있다.오늘은 포트 번호의 구조에 대해 알아보자OSI 모델 4계층인 전송계층의 기능오류를 점검하는 기능. 오류가 발생하면 데이터를 재전송하도록 요청한다(연결 확립,재전송 제어,윈도우 제어)전송된 데이터의 목적지가 어떤 애플리케이션인지 식별하는 기능여기서 2번째 기능을 위해 포트번호를 활용한다. TCP헤더의 포트 번호를 사용해서 통신시 목적지 애플리케이션을 구분할 수 있다.TCP헤더 TCP 헤더를 간단히 살펴보자면... 그림에는 영어가 많아서 한글로 적어보겠다. 발신지 포트 번호, 목적지 포트 번호일련번호(32비트)확인 응답 번호(32비트)헤더길이(4비트), 예약 영역(6비트), 코드비트(6비트), 윈도우 크기(16비트)체크섬(16비트), 긴급 포인터(16비트)옵션포트 .. 팩토리 메서드 패턴 Factory method pattern (생성패턴)객체가 생성되는 과정을 숨기고 완성된 인스턴스만 반환하는 패턴이다. new연산자로 객체를 생성하지 않고, 객체의 생성과정을 다른 객체에 맡겨서 리턴 받아서 사용한다이렇게 객체 생성을 대신 해주는 클래스를 Factory 라고 한다. 장점 : 코드 간 결합도를 낮출 수 있다. 예시) public class Bus {} public class BeanFactory { public Bus getBus(){ return new Bus(); }} Bus 객체를 만들 때, new 연산자로 생성하지 않고 BeanFactory 클래스를 통해서 객체를 사용한다.public class BeanFactoryMain { public static .. Java Reflection 알아보기 Java Reflection은 이름별로 클래스 및 데이터 구조에 대한 정보의 동적 검색을 지원하고,실행중인 Java 프로그램 내에서 해당 정보를 조작할 수 있습니다. Java Reflection 활용 예시 : Framework, IDE에서 내부적으로 동적 바인딩 기능 사용(프로그램 실행 중 동적으로 클래스 정보 가져옴)ex. IntelliJ 자동완성, Spring Framework Annotation,@Getter,@Setter 도 리플렉션을 사용하여 필드 정보를 가져와 구현한다.ClassLoader 자바 클래스 로더는 런타임 시 클래스를 동적으로 JVM에 로드하는 역할을 수행한다.이때, Class 정보를 CLASSPATH(클래스 파일을 찾는데 기준이 되는 파일 경로)에서 찾는다. 만약a() 메서드를 가.. JVM 메모리 구조 Runtime Data Area = JVM의 메모리 영역 1.Method Area 메소드 영역에서는 정적 필드와 클래스 구조를 저장한다. 2. Heap Areanew 연산자로 생성되는 객체와 배열등이 저장된다. 가비지 컬렉션의 대상이 되는 공간이다. 3. Stack Area임시적으로 사용되는 변수나 정보들이 저장된다 4. PC 레지스터현재 수행중인 JVM 명령어 주소를 저장한다 5. Native Method Stack기계어로 작성된 프로그램을 실행시키는 영역이다. Java Heap은 JVM이 관리하는 메모리 영역, Native Memory는 운영체제가 관리하는 메모리 영역이다.Java 8 부터는 클래스 정보가 Metaspace라는 영역에 올라간다 클래스 정보는 처음 사용될 때 메모리에 그 정보를 올.. H2 Database 사용법 최초 생성 주소를 아래와 같이 생성(파일생성)jdbc:h2:~/ 최초 생성 이후 접속 시 접근 주소jdbc:h2:tcp://localhost/~/ 도커 개요 및 내부 구조 도커를 왜 사용하는가? 도커는 컨테이너 기반 가상화 도구이다. Docker를 사용하면 애플리케이션을 인프라에서 분리하고, 신속하게 배포할 수 있다.그리고 애플리케이션을 격리된 환경에서 실행하여 다른 시스템이나 애플리케이션과의 충돌을 방지한다. 기존의 Hypervisor를 통한 가상화(가상머신 방식)에서 좀 더 경량화한 형태가 컨테이너 가상화이다.가상머신 방식의 경우 GuestOS로 인한 오버헤드와 중복이 발생할 수 있다는 단점이 있다.반면에 컨테이너 가상화를 이용하면 오버헤드가 적어 VM보다 가볍고 빠른 장점이 있다.( *오버헤드 : 어떤 처리를 하기 위해 들어가는 간접적인 처리시간, 메모리 등을 말한다)가상환경가상환경애플리케이션애플리케이션미들웨어미들웨어컨테이너 관리 소프트웨어OS하드웨어 도커를 사용하면.. 이전 1 2 3 4 5 6 ··· 42 다음