목록전체 글 (85)
경주장
✔️ 학습할 것 (필수) 자바 상속의 특징 메소드 오버라이딩 final 키워드 super 키워드 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 Object 클래스 정리 해야지 해야지 하고 몇번 시도해보았지만 항상 미루게 되고 이해가 안되던 자바 개념인 Object 클래스를 좋은 기회로 정리할 수 있게 되었습니다. 이번주차의 다른 "학습할 것"들과 마찬가지로 오라클 자바 도큐먼트를 참고하여 정리하였습니다. java.lang 패키지의 Object 클래스는 class hierachy tree의 최 상단에 위치합니다. 이번 섹션에서 다루고자하는 Object의 메소드는 아래와 같습니다. 메소드 선언부 description protected Object clone() throw..
✔️ 학습할 것 (필수) 자바 상속의 특징 메소드 오버라이딩 final 키워드 super 키워드 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 Object 클래스 이번 주제는 오라클 자바 도큐먼트를 참고하여 정리하였습니다. Def) Abstract class An abstract class is a class that is declared 'abstract' -- it may or may not include abstract methods. Abstract classes cannot be instantiated, but they can be subclassed. Def) Abstract method An abstract method is a method that is..
학습할 것 (필수) 자바 상속의 특징 메소드 오버라이딩 final 키워드 super 키워드 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 Object 클래스 메소드 디스패치 Def) Method Dispatch is the mechanism that helps to decide which operation should be executed, or more specifically, which method implementation should be used. 아래의 예제는 토비의 봄 TV 1화를 보고 정리한 내용입니다. Static Dispatch /** * Static Dispatch */ public class DispatchV1 { static class Serv..
학습할 것 (필수) 자바 상속의 특징 메소드 오버라이딩 final 키워드 super 키워드 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 Object 클래스 final 키워드는 세가지 위치에서 활용됩니다. 클래스 선언부 필드 메소드 이때 필드에 선언되는 final 키워드는 불변을 의미합니다. instance 필드의 경우 생성시 값이 채워지고 이후의 불변을 보장하며 필드 초기화 or 생성자 초기화 필수 static(클래스) 필드의 경우 final 키워드와 함께 사용되면 상수 (constant)의 의미로 사용됩니다. 필드 초기화 필수 생성자를 통해 초기화되는 final Instance 필드를 포함한 클래스를 상속한 subclass의 경우 자신의 생성자의 첫번째 라인에 s..
✔️ 학습할 것 (필수) 자바 상속의 특징 메소드 오버라이딩 final 키워드 super 키워드 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 Object 클래스 메소드 오버라이딩의 경우 Instance 메소드와 static 메소드두가지 종류가 있습니다. Instance 메소드 An instance method in subclass with the same signature and return type as an instance method in the superclass overrides the superclass's method Subclass의 메소드 오버라이딩은 superclass의 메소드와 "충분히 비슷한" 메소드를 쉽게 작성 할 수 있게해줍니다. overr..
목표 자바의 상속에 대해 학습하세요. ✔️ 학습할 것 (필수) 자바 상속의 특징 메소드 오버라이딩 super 키워드 다이나믹 메소드 디스패치 (Dynamic Method Dispatch) 추상 클래스 final 키워드 Object 클래스 다른 학습자분의 포스팅을 보니 Oracle 공식문서를 참고하는 분이 계셔서 저도 한번 따라해 보겠습니다 ㅎ.ㅎ 자바 상속의 특징 Def - subclass, superclass A class that is derived from another class is called a subclass The class from which the subclass is derived is called a superclass 특징 1 - Single Inheritance(단일 상속) E..
분량이 긴 것같아 글을 분리하여 작성하겠습니다. 학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 생성자(Constructor)는 new 연산자와 같이 사용되어 클래스로부터 객체를 생성할 때 호출되어 객체의 초기화를 담당합니다. 객체 초기화란 필드를 초기화하거나, 메소드를 호출하여 객체를 사용할 준비를 하는 것을 의미합니다. new 연산자에 의해 생성자가 성공적으로 실행되면 힙(heap)영역에 객체가 생성되고 객체의 주소가 리턴됩니다. 리턴된 객체의 주소는 클래스 타입 변수에 저장되어 객체에 접근할 때 이용됩니다. 모든 클래스는 생성자가 반드시 존재하며 하나 이상을 가질 수 있습니다. 클래스 내부에 생..
학습할 것 (필수) 클래스 정의하는 방법 객체 만드는 방법 (new 키워드 이해하기) 메소드 정의하는 방법 생성자 정의하는 방법 this 키워드 이해하기 졸업과 이사, Programmers Backend 스터디 프로그램 등이 겹쳐 최근 live-study의 진행이 밀리고 있습니다. ㅠㅠ 기선님의 live-study는 이미 종료된 프로그램이지만 따로 진행하는 것인 만큼 혼자 진행 할 수 있다는 장점을 살려 느리지만 꼭 완수 할 수 있도록 하겠습니다. 클래스(class)란 객체지향의 추상화(abstraction)라는 개념을 직접 구현한 것이라 할 수 있습니다. 클래스는 필드(상태)와 메소드(행동)로 이루어지며 다음과 같이 선언합니다. 접근제어자 class 클래스이름 { 접근제어자 필드1의타입 필드1의이름; ..
AuthenticationFilter Filter는 AuthenticationManager에게 UsernamePasswordAuthenticationToken 첫번째 생성자 (id, password)를 통해 인증 토큰을 생성하여 인증의 책임을 위임합니다. AuthenticationManager의 구현체 ProviderManager는 중요하게는 아래의 두가지 필드를 가지고 있습니다. private List providers; private AuthenticationManager parent; providers는 실질적으로 인증을 담당할 AuthenticationProvider를 List로 가지는 필드입니다. AuthenticationManager는 자신과 같은 타입의 객체를 parent란 이름으로 부모로 ..
SecurityContext Authentication 객체가 저장되는 보관소 ThredLocal에 저장되어 아무 곳에서나 참조가 가능하도록 설계함 Authentication authentication = SecurityContextHolder.getContext().getAuthentication() SecurityContextHolder SecurityContext 객체 저장소 SecurityContext 객체 저장하는 방식 MODE_THREADLOCAL : 스레드당 SecurityContext 객체를 할당, Default MODE_INhERITABLETHREADLOCAL : 메인 스레드와 자식 스레드에 관하여 동일한 SecurityContext를 유지 MODE_GLOBAL : 응용 프로그램에서 단 ..