티스토리 뷰

반응형

 

package day15;

public interface GInter<N1,N2> { //인터페이스에 타입매개변수 선언
	abstract N1 add(N1 data1,N2 data2);  //추상메서드 정의
	N1 sub(N1 data1,N2 data2);
	N2 mul(N2 data1,N2 data2);

}
package day15;

public class Calc implements GInter<Double, Integer> { //인터페이스를 상속하며, 타입매개변수 정의

	@Override  //인터페이스의 추상메서드는 재정의를 해야 한다.
	public Double add(Double data1, Integer data2) {
		return data1+data2;
	}

	public Double sub(Double data1, Integer data2) {
		return data1-data2;
	}

	public Integer mul(Integer data1, Integer data2) {
		return data1*data2;
	}
	public static void main(String[] args) {
		Calc c = new Calc();
		System.out.printf("%.2f\n",c.add(3.12, 7));
		System.out.println(c.sub(9.49, 7));
		System.out.println(c.mul(8, 9));
	}

	
}

※개념정리

 

Generic(제네릭)?

하나의 코드를 여러 타입에 대하여 재사용할 수 있도록 해주는 기술

 

Generic(제네릭 인터페이스)?

제네릭을 선언한 인터페이스의 추상메서드를 상속받은 클래스를 칭함

 

Generic 구조

 

Public interface 인터페이스명<타입매개변수>{

  abstract 타입매개변수 추상메서드명(타입매개변수 변수);

}

 

class 클래스명 implements 인터페이스명<지정할 타입>{

Override

}

 

public intreface Number<T1,T2>{

  abstract T1 add(T1 number1, T2  number2);

}

 

class Cal implemnets Number<Integer, Double>{

Override

}

 

'Java > 개념' 카테고리의 다른 글

JAVA/Collection Framework(컬렉션 프레임워크)  (0) 2020.05.29
JAVA 싱글톤 패턴2  (0) 2020.05.15
JAVA Generic(제네릭 메서드)  (0) 2020.05.15
JAVA Generic(제네릭 클래스)  (0) 2020.05.11
JAVA package/java.util 총 정리  (0) 2020.05.10
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2024/10   »
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
글 보관함