2011-08-16 4 views
1

X라는 클래스를 만들었고 X 클래스의 메서드 중 하나가 X 클래스의 인스턴스를 반환해야하지만 이번에는 X 클래스가 같은 이름이지만 다른 클래스 클래스 이름이 같은 JAR 파일에서 가져옵니다. 원하는 클래스 X를 참조 할 수있는 방법이 있습니까?같은 이름의 클래스를 사용하는 클래스

+1

첫 번째 문장의 길이가 너무 길어서 이해할 수 없습니다. 당신의 문제가 무엇인지 정확히 보여줄 수 있습니까? – Dimitri

+0

나는이 스레드가 귀하의 질문에 대답 믿습니다 : [http://stackoverflow.com/questions/2079823/importing-two-classes-with-same-name-how-to-handle][1] 을 [1] : http://stackoverflow.com/questions/2079823/importing-two-classes-with-same-name-how-to-handle –

답변

3

다른 패키지 이름을 사용하는 경우 com.packagename.X과 같이 완전히 일치하는 이름으로 다른 jar 파일의 클래스를 참조하십시오.

1

예, 동일한 패키지에 2 개의 동일한 클래스 이름을 가질 수 없으므로 정규화 된 클래스 이름을 지정합니다.

예. 의 당신이 (2 개의 다른 패키지) 같은 이름을 가진 두 클래스

za.org.myDomain.factory.ClassAFactory
za.org.myDomain.subDomain.factory.ClassAFactory

가 있다고 가정 해 보자

import za.org.myDomain.factory.ClassAFactory; 

당신이 (추상 클래스 ClassFactory에서 예를 들어)이의 일을 수행 할 수 있습니다 :

만 1 클래스의 가져온
public abstract ClassAFactory getAFactory(); 
public abstract za.org.myDomain.subDomain.factory.ClassAFactory getFactory(); 

두 번째 가져 오기에는 반환 유형을 완전하게 지정 했으므로 import 선언이 필요하지 않습니다.

0

당신은 예를 들어, 전체 이름을 참조 할 수있다 : (그들은 다른 폴더에 있기 때문에 다른 이름) 같은 이름을 가진 com.something.something.ClassName

0

모든 클래스는 별도의 패키지에 있습니다. 이렇게하면 클래스가 모호해진다.

현재 어떤 패키지인지주의하십시오. 즉, Java가 사용하는 이름 해석 기술을 알고 있어야합니다.

관련 문제