JavaTM Platform
Standard Ed. 6

java.rmi.server
클래스 RMIClassLoaderSpi

java.lang.Object 
  상위를 확장 java.rmi.server.RMIClassLoaderSpi


public abstract class RMIClassLoaderSpi
extends Object

RMIClassLoaderSpi 는,RMIClassLoader 의 서비스 프로바이더 인터페이스입니다. 특히,RMIClassLoaderSpi 인스턴스는,RMIClassLoader 의 다음의 static 메소드의 구현을 제공합니다.

이러한 메소드중 한쪽이 불려 가면(자), 이 클래스의 인스턴스상의 대응하는 메소드에 처리가 위양 됩니다. 각 메소드가 프로바이더 인스턴스에 위양 하는 방법의 자세한 것은, 각 메소드의 메뉴얼을 참조해 주세요. 프로바이더 인스턴스가 어떻게 선택되는지에 대해서는, RMIClassLoader 의 메뉴얼을 참조해 주세요.

도입된 버젼:
1.4
관련 항목:
RMIClassLoader

생성자 의 개요
RMIClassLoaderSpi ()
           
 
메소드의 개요
abstract  String getClassAnnotation (Class <? > cl)
          RMIClassLoader.getClassAnnotation(Class) 의 구현을 제공합니다.
abstract  ClassLoader getClassLoader (String  codebase)
          RMIClassLoader.getClassLoader(String) 의 구현을 제공합니다.
abstract  Class <? > loadClass (String  codebase, String  name, ClassLoader  defaultLoader)
          RMIClassLoader.loadClass(URL, String) , RMIClassLoader.loadClass(String, String) , 및 RMIClassLoader.loadClass(String, String, ClassLoader) 의 구현을 제공합니다.
abstract  Class <? > loadProxyClass (String  codebase, String [] interfaces, ClassLoader  defaultLoader)
          RMIClassLoader.loadProxyClass(String, String[], ClassLoader) 의 구현을 제공합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

RMIClassLoaderSpi

public RMIClassLoaderSpi()
메소드의 상세

loadClass

public abstract Class <? > loadClass(String  codebase,
                                   String  name,
                                   ClassLoader  defaultLoader)
                            throws MalformedURLException ,
                                   ClassNotFoundException 
RMIClassLoader.loadClass(URL, String) , RMIClassLoader.loadClass(String, String) , 및 RMIClassLoader.loadClass(String, String, ClassLoader) 의 구현을 제공합니다. 지정된 코드 베이스 URL 패스로부터 클래스를 로드합니다. 지정된 로더를 사용할 수도 있습니다. 일반적으로, 프로바이더 구현은, 지정된 defaultLoader 를 사용해 지정된 클래스의 해결을 시도한 후에, 코드 베이스 URL 패스로부터의 클래스의 해결을 시도합니다.

이 메소드의 구현은, 지정된 이름의 클래스를 돌려주는지, 예외를 throw 합니다.

파라미터:
codebase - 클래스의 로드원의 URL 의 리스트 (단락 문자는 스페이스), 또는 null
name - 로드 대상 클래스의 이름
defaultLoader - 상황에 따라 사용하는 추가 클래스 로더, 또는 null
반환값:
로드 된 클래스를 나타내는 Class 객체
예외:
MalformedURLException - codebasenull 이외로 한편 무효인 URL 를 포함하고 있는 경우, 또는 codebasenull 로 한편 클래스의 로드시에 사용된 프로바이더 고유 URL 가 무효인 경우
ClassNotFoundException - 클래스의 정의가 지정된 장소에 없었던 경우

loadProxyClass

public abstract Class <? > loadProxyClass(String  codebase,
                                        String [] interfaces,
                                        ClassLoader  defaultLoader)
                                 throws MalformedURLException ,
                                        ClassNotFoundException 
RMIClassLoader.loadProxyClass(String, String[], ClassLoader) 의 구현을 제공합니다. 지정된 이름을 가지는 인터페이스군을 구현한 동적 프록시 클래스 (Proxy 를 참조)를, 지정된 코드 베이스 URL 패스로부터 로드합니다. 지정된 로더를 사용할 수도 있습니다.

이 메소드의 구현은, 지정된 인터페이스를 구현하는 프록시 클래스를 돌려주는지, 예외를 throw 할 필요가 있습니다.

파라미터:
codebase - 클래스의 로드원의 URL 의 리스트 (단락 문자는 스페이스), 또는 null
interfaces - 프록시 클래스가 구현하는 인터페이스의 이름
defaultLoader - 상황에 따라 사용하는 추가 클래스 로더, 또는 null
반환값:
지정된 인터페이스를 구현하는 동적 프록시 클래스
예외:
MalformedURLException - codebasenull 이외로 한편 무효인 URL 를 포함하고 있는 경우, 또는 codebasenull 로 한편 클래스의 로드시에 사용된 프로바이더 고유 URL 가 무효인 경우
ClassNotFoundException - 지정된 인터페이스의 정의중 한쪽이 지정된 장소에 발견되지 않는 경우, 또는 동적 프록시 클래스의 작성에 실패했을 경우 (Proxy.getProxyClass(ClassLoader, Class[]) 가, 지정된 인터페이스 리스트에 대해서 IllegalArgumentException 를 throw 했을 때 등)

getClassLoader

public abstract ClassLoader  getClassLoader(String  codebase)
                                    throws MalformedURLException 
RMIClassLoader.getClassLoader(String) 의 구현을 제공합니다. 지정된 코드 베이스 URL 패스로부터 클래스를 로드하는 클래스 로더를 돌려줍니다.

시큐리티 매니저가 존재하는 경우는,RuntimePermission("getClassLoader") 액세스권을 사용해 checkPermission 메소드가 불려 가SecurityException 가 체크됩니다. 이 메소드의 구현은, 호출측 문맥이 코드 베이스 URL 패스내의 모든 URL 에 대한 액세스권을 가지고 있을지 어떨지에 임해서, 시큐리티 체크를 실시하는 일도 있습니다.

파라미터:
codebase - 반환되는 클래스 로더가 로드하는 클래스가 포함되고 있는 URL 의 리스트 (단락 문자는 스페이스), 또는 null
반환값:
지정된 코드 베이스 URL 패스로부터 클래스를 로드하는 클래스 로더
예외:
MalformedURLException - codebasenull 이외로 한편 무효인 URL 를 포함하고 있는 경우, 또는 codebasenull 로 한편 클래스 로더의 식별시에 사용된 프로바이더 고유 URL 가 무효인 경우
SecurityException - 시큐리티 매니저가 존재할 경우에, 그 checkPermission 메소드가 실패했을 경우. 또는, 호출측이 코드 베이스 URL 패스내의 모든 URL 에 대한 액세스권을 가지고 있지 않은 경우

getClassAnnotation

public abstract String  getClassAnnotation(Class <? > cl)
RMIClassLoader.getClassAnnotation(Class) 의 구현을 제공합니다. 클래스 정의의 위치를 나타내는 주석 캐릭터 라인을 돌려줍니다. RMI 는 이것을 사용해, 지정된 클래스의 객체의 정렬화를 실시할 때에, 클래스 기술자에게 주석을 더합니다.

파라미터:
cl - 주석을 취득하는 대상의 클래스
반환값:
정렬화시로 지정된 클래스에 주석을 더하기 위해서(때문에) 사용되는 캐릭터 라인, 또는 null
예외:
NullPointerException - clnull 의 경우

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.