본문 바로가기

Java16

Java - Java Collection Framework Java Collection Framework : Collection Injection (컬렉션 주입) - 빈을 정의할 때 주입해야 하는 멤버가 켈렉션인 경우에 컬렉션이 관리할 객체를 초기에 설정 할 수 있다. List, Map(k, v), Set, Property를 사용한다. * Collection (순서나 집합적인 저장공간) List : 순서가 있는 저장공간, 데이터의 중복을 허용한다. Stack : LIFO, FILO : 고정적인 메모리 크기 Vector(10, 100) : 가변적인 메모리 구조 , 동기화 보장, 잘 쓰이지 않음. ArrayList : 아주 큰 데이터 저장공간, 동기화 보장 X, 속도가 아주 빠르고 크기를 마음대로 조절이 가능하다. 단방향 구조이므로 순차적인 접근이 가능하다 Link.. 2020. 5. 18.
Java - 객체지향 - 추상화 , 추상클래스 ,추상 메서드 추상화 : 서비스 집중화 (캡슐 단위의 공통 서비스) 추상클래스를 만드는 2가지 상황 ​ 1. 개체들의 공통 서비스를 집중화 ​ > 장점 : 코드 집중화, 일괄적으로 처리 2. 향후 제품을 위한 프레임워크 - 추상클래스는 공통 자료형 Shape[] shapes = new Shape[10]; shapes[0] = new Circle(); shapes[1] = new Rect(); shapes[2] = new Line(); . . . for(int ...) shapes[i].move(); Shape[] shapes = new Shape[10]; shapes[0] = new Circle(); shapes[1] = new Rect(); shapes[2] = new Line(); . . . public void .. 2020. 5. 18.
Java - 호출되는 함수의 위치 * 문제 A a = new B(); B b = new B(); b.F2(); a.F6(); a.F2(); a.F4(); ------------------------------------------------------------------------------------------- b.F2(); > class B 의 F3() 실행 ?? : B객체 내에 F2()가 존재 하지 않으므로 class A 의 F2() 실행 F2()는 F3()호출 자식클래스에 오버라이드된 함수가 있다면 오버라이드된 함수가 더 우선순위가 높음 따라서 class B F3() 실행 a.F6(); > 오류 발생 ?? : B라는 객체를 생성했지만 참조형식이 class A 이므로 class B 의 F5()까지만 호출 가능 Answer : (.. 2020. 5. 18.
Java - 생성자 오버로드 * 2개 이상의 생성자 class A { private B[] b; private int x; } public A() { b = new B[3]; x = 0; } public A(int a){ b= new B[a]; x= 0; } * 생성자의 중복 제거 class A { private B[] b; private int x; } public A() { this(2); } public A(int a){ b= new B[a]; x= 0; } * 생성자를 하나도 정의 하지 않는다면 >> null , 0 2020. 5. 18.