티스토리 뷰

반응형

package generic;

public class Plastic extends Meterial{

	public String toString() {
		return "재료는 Plastic 입니다";
	}

	@Override
	public void doPrinting() {
		System.out.println("Plastic으로 프린팅 합니다");		
	}
}
package generic;

public class GenericPrinterTest {

	public static void main(String[] args) {

		GenericPrinter<Powder> powderPrinter = new GenericPrinter<Powder>();
		Powder powder = new Powder();
		powderPrinter.setMaterial(powder);
		System.out.println(powderPrinter);
		
		GenericPrinter<Plastic> plasticPrinter = new GenericPrinter<Plastic>();
		Plastic plastic = new Plastic();
		plasticPrinter.setMaterial(plastic);
		System.out.println(plasticPrinter);
		
		powderPrinter.printing();
		plasticPrinter.printing();
		
		GenericPrinter printer = new GenericPrinter();
		
		
	}

}

49. 제네릭 프로그래밍

배열, 큐, 등의 자료 구조가 다  구현된 라이브러리-> 가비지 콜렉션

c++ 의 템플릿과 유사

 

| 제네릭 프로그래밍이란?

변수의 선언이나 메서드의 매개변수를 하나의 참조 자료형이 아닌 여러 자료형을 변환할 수 있도록 프로그래밍하는 방식

실제 사용되는 참조 자료형으로의 변환은 컴파일러가 검증하므로 안정적인 프로그래밍 방식

 

 

package generic;

public class GenericPrinter<T extends Meterial> {

	private T material;

	public T getMaterial() {
		return material;
	}

	public void setMaterial(T material) {
		this.material = material;
	}
	
	public String toString() {
		return material.toString();
	}
	
	public void printing() {
		material.doPrinting();
	}
}

 

 

package generic;

public abstract class Meterial {

	public abstract void doPrinting(); 
}

 

 

 

 

 

 

50. 컬렉션 프레임워크란

 

| 컬렉션 프레임워크란?

프로그램 구현에 필요한 자료구조와 알고리즘을 구현해 놓은 라이브러리

java.util 패키지 에 구현되어있음

개발에 소요되는 시간을 절약하고 최적화된 라이브러리를 사용할 수 있으

COLLECTION 인터페이스와 MAP 인터페이스로 구성됨.

 

 

 

 

 

자료구조: 리스트 , 링크드 리스트, 큐,  스택, 해쉬 , 바이너리 트리 에 대해 이야기함

 

 

 

 

 

바 인강이 듣고 싶다면 =>https://bit.ly/3ilMbIO

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
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
글 보관함