일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- multipart바인딩
- 검증 실패 예외처리
- rest api
- 데이터베이스파서
- 옵티마이저
- equals
- 스프링요청반응
- httpservlet기술
- fcm데이터구조
- 공유기작동방식
- 래퍼클래스
- 중첩클래스
- biblecash
- 옵티마저
- Wrapper class
- HTTP프로토콜
- 불변객체
- rest api 검증
- 프로세스 생성
- 동기비동기블로킹논블로킹
- multiparfile데이터
- 디스패처서블릿
- DispatcherServlet
- fcmv1
- 왜불변객체인가
- 클라이언트요청반응
- fcm성능비교
- 동등성동일성
- java enum
- HttpServlet
- Today
- Total
목록분류 전체보기 (49)
개발은 아름다워
자바에서 제공하는 굉장히 많은 클래스들이 불변 객체로 설계가 되어 있다.불변 객체는 프로그래밍에서도 중요한 개념이다.기반 개념으로 기본형과 참조형의 공유에 대해서 알아야한다.기본형과 참조형의 공유자바의 데이터 타입을 가장 크게 보면 기본형(Primitive Type)과 참조형(Reference Type)으로 나눌 수 있다.기본형 : 하나의 값을 여러 변수에서 절대 공유하지 않음참조형 : 하나의 객체 참조값을 통해 여러 변수에서 공유자바는 항상 값을 복사해서 대입한다.기본형도 값을 복사한다. 하지만 값을 공유하는 것은 아니다.int a = 10;int b = a;값을 복사기 때문에 b 의 값이 10이 된다b=20;이라면b의 값만 20이 되며 a의 값은 10 그대로이다. 왜냐하면 기본형은 값을 공유하지 않기..
부모 클래스는 제공하지만, 실제 생성되면 안되는 클래스를 추상 클래스라고 한다.추상 클래스는 이름 그대로 추상적인 개념을 제공하는 클래스이다. 따라서 실체인 인스턴스가 존재하지 않는다. 대신에 상속을 목적으로 사용되고! 부모 클래스 역할을 담당한다-> 부모 클래스 역할을 담당이 필요한 이유는 다형적 참조와 메소드 오버라이딩을 활용하기 위해서이다.즉, 추상클래스는 상속을 활용하기 위함이다.추상 메서드부모 클래스를 상속 받는 자식 클래스가 반드시 오버라이딩 해야 하는 메서드를 부모 클래스에 정의할 수 있다. 이것을 추상 메서드라 한다. 추상 메서드는 이름 그대로 추상적인 개념을 제공하는 메서드이다. 따라서 실체가 존재하지 않고, 메서드 바디가 없다.메서드에 abstract 키워드를 붙여야 한다.추상 메서드가..
동일성 : == 연산자를 이용해 식별값으로 같은지 확인할 수 있음== 연산자의 기본데이터 타입, 참조 타입의 경우 작동 방식을 보자면기본 데이터 타입int x = 5;int y = 5;System.out.println(x == y); // true값이 직접 비교하므로 true가 나옴참조 타입Integer obj1 = new Integer(5);Integer obj2 = new Integer(5);System.out.println(obj1 == obj2); // false (다른 메모리 주소)객체가 생성된 heap 메모리 주소를 비교하기 때문에 false가 나옴불변객체객체의 상태가 변하지 않는 객체를 의미한다. wrapper클래스로 만들어진 객체들은 불변객체이다. 객체가 만들어지면 상태를 바꿀 수 없음..

call by valuecall by reference이 두가지 용어는 함수가 매개변수를 받을때 어떤 방식으로 받는가이다.call by valueint a = 3;void swap(int x) {x = 5;}swap(a)라면 a의 값은 어떻게 될까?a = 3 그대로이다.#include void swap(int x) { x = 5;}int main() { int a = 3; printf("Before swap: %d\n", a); // swap 함수를 호출하더라도 a의 값은 변경되지 않음 swap(a); printf("After swap: %d\n", a); return 0;}int x에 a의 값 자체가 복사 되었기 때문이다.call by reference나는 함수를 ..
쿠키는 왜 사용하는걸까?서버 입장에서 어떤 요청이 왔을때 로그인한 유저인지 아닌지 알 수 없다. 왜냐하면 HTTP는 무상태(Stateless) 프로토콜이기 때문이다.StatelessHTTP는 무상태 프로토콜이다.클라이언트와 서버가 요청와 응답을 주고 받으면 연결이 끊어진다.클라이언트가 다시 요청하면 서버는 이전 요청을 기억하지 못한다.클라이언트와 서버는 서로 상태를 유지하지 않는다.그렇다면 로그인 한 유저가 모든 요청에 자신의 정보를 포함해서 서버에 http 요청을 보낸다면?모든 요청에 사용자 정보가 포함되도록 개발 해야함 - 개발하는 것이 힘들어짐상태를 모르는 문제를 해결하기 위해서 쿠키를 도입함1) 로그인시클라이언트가 보내는 로그인 정보를 서버에서는 받음서버는 쿠키에 유저 정보를 담은 후 응답에 쿠키..