특정 클래스를 선언하지 않고 특정 인터페이스를 구현하는 특정 클래스와 동일한 시간이어야하는 매개 변수를 사용하여 메서드를 선언하는 방법은 무엇입니까?
ImageX 클래스를 선언하고 인터페이스 태깅을 선언했다고 가정합니다. 그래서 Tagging 인터페이스를 구현하는 ImageX 인스턴스 만 수신해야하는 다른 클래스 나 메서드를 만들어야합니다. 그런 방법을 선언하는 방법? 예 :메서드 매개 변수는 특정 인터페이스를 구현하는 특정 클래스의 obj 여야합니다.
private void someMethod (ImageX<Tagging> obj){}
그러나 이것은 물론 올바르지 않습니다. 예 필요한 인터페이스를 구현하는 경우 obj를 확인할 수 있지만 해당 매개 변수를 확인하고 싶습니다. 그리고 만약 그것이 어떤 방법이 아니라 생성자가 아니면 ...
아마 제네릭에 대해 물어 보는 건가요?
그래서 당신은'Tagging' 인터페이스를 갖고 싶어, 그리고 '클래스는 * Tagging을 구현하지 * 않은 클래스이고,'Tagging'을 구현하는 경우에만'ImageX'의 인스턴스를 받아들이는 메소드를 원합니다. 나는 그것이 리팩터링의 필요성을 나타내고 싶어한다고 제안 할 것입니다. –
네, 원합니다. 그것은 android에 관한 것이고 클래스는 필요한 인터페이스를 구현하는 Activity입니다. 그러나 모든 액티비티가 그것을하는 것은 아니며 액티비티를 서브 클래 싱하려는 것이 아닙니다. – Stan
@ stan : 알겠습니다. 다행히도, assylias는 답을 가지고있었습니다. –