2009-12-13 5 views
2

이것은 scjp mock 시험 문제입니다.":"및 "." 클래스 패스 선언을 사용하는 java 호출에서

가정하자 나는이 다음 두 파일 :

package pkg; 

public class Kit { 
    public String glueIt (String a, String b) {return a+b;} 
} 

import pkg.*; 

class UseKit { 
    public static void main(String[]args) { 
     String s = new Kit().glueIt(args[1],args[2]); 
     System.out.println(s); 
    } 
} 

그리고 다음 디렉토리 구조 :

test 
    |--UseKit.class 
    | 
    com 
    |--KitJar.jar 

현재 디렉토리 test하고 파일 pkg/Kit.class에 따르면 KitJar.jar

에 대답은 출력 bc를 생성하는 java 호출은

입니다.
java -classpath com/KitJar.jar:. UseKit a b c 

":"및 "."연산자의 사용법을 설명하십시오.

+1

이러한 종류의 질문이 실제로 SCJP에 표시됩니까? (필자는 1.5 베타 버전만을 다뤘습니다.) 플랫폼과 플랫폼에 구애받지 않는 언어와 라이브러리는 아니므로 모든 IDEd가 될 것으로 기대합니다. (IDEd는 단어가 아닙니까?) –

+0

예,이 질문은 Kathy Sierra의 저서입니다. 10 장. 개발. – andandandand

답변

18

:은 Java 클래스 경로의 항목에 대한 구분 기호입니다. .은 "현재 디렉토리"를 의미합니다. 따라서 클래스 경로 com/KitJar.jar:.com/KitJar.jar과 현재 디렉토리의 두 위치에서 Java 클래스 파일을 검색한다는 의미입니다.

+9

콜론':'은 linux/unix 고유의 방식입니다. Windows에서는 세미콜론'; '이 사용됩니다. – BalusC

+3

":"는 * nix 시스템에 적합합니다. 그것은 ";" Windows 용. – duffymo

+3

@Asap 물론, 명령 줄에서 어떻게 할 수 있습니까? :) –

6

대답은 정확하지만 classpath 구분 기호는 실제로 플랫폼에 따라 다릅니다. 주석에서 지적했습니다. 클래스 경로 와일드 카드에 대한 설명, 그리고 Setting the Class Path 기술 노트를 참조 CLASSPATH 환경 변수를 정리 (및/또는 * 괜찬아 버전 Setting the Class Path)하는 방법에 대한 자세한 설명을 포함하여 자세한 내용은

.

관련 문제