|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | »ý¼ºÀÚ | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
java.lang.Objectjava.lang.Class<T>
public final class Class<T>
Ŭ·¡½º Class
ÀνºÅϽº´Â ½ÇÇàÁßÀÇ Java ¾îÇø®ÄÉÀ̼ÇÀÇ Å¬·¡½º ¹× ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³À´Ï´Ù. ¿°Å´Â Ŭ·¡½ºÀÇ ÀÏÁ¾, ÁÖ¼®Àº ÀÎÅÍÆäÀ̽ºÀÇ ÀÏÁ¾ÀÔ´Ï´Ù. (¿Í)°ú °°ÀÌ ¾î´À ¹è¿µµ, °°Àº ¿ä¼ÒÇü ¹× Â÷¿ø¼ö¸¦ °¡Áö´Â ¸ðµç ¹è¿¿¡ ÀÇÇØ °øÀ¯µÇ´Â Class
°´Ã¼·Î¼ ¸®Ç÷ºÆ®
µÇ´Â Ŭ·¡½º¿¡ ¼ÓÇÕ´Ï´Ù. Java
¿ø½ÃÇü
(boolean
, byte
, char
, short
, int
, long
, float
, double
)¿¡ ´õÇØÅ°¿öµå void
µµ
Class
°´Ã¼·Î ³ªÅ¸³»Áý´Ï´Ù.
Class
¿¡´Â public »ý¼ºÀÚ´Â ¾ø½À´Ï´Ù. Class
°´Ã¼´Â
Ŭ·¡½º°¡ ·Îµå µÉ ¶§¿¡ Java °¡»ó ¸Ó½Å¿¡ ÀÇÇØ ¹× Ŭ·¡½º ·Î´õÀÇ defineClass
¸Þ¼µåÀÇ È£Ãâ¿¡ ÀÇÇØ ÀÚµ¿ÀûÀ¸·Î ±¸ÃàµË´Ï´Ù.
¾Æ·¡ÀÇ ¿¹¿¡¼´Â Class
°´Ã¼¸¦ »ç¿ëÇØ °´Ã¼ÀÇ Å¬·¡½º¸íÀ» Ãâ·ÂÇÕ´Ï´Ù.
void printClassName(Object obj) { System.out.println("The class of " + obj + " is " + obj.getClass(). getName()); }
Ŭ·¡½º ¸®ÅÍ·²À» »ç¿ëÇØ, À̸§ ÷ºÎÇü (¶Ç´Â void)À» À§ÇÑ Class
°´Ã¼¸¦ ÃëµæÇÒ ¼öµµ ÀÖ½À´Ï´Ù (JLS ¼½¼Ç 15.8. 2 ). ·Ê:
System.out.println("The name of class Foo is: "+Foo.class.getName());
ClassLoader.defineClass(byte[], int, int)
,
Á÷·ÄÈ µÈ Çü½Ä ¸Þ¼µå °³¿ä | ||
---|---|---|
|
asSubclass (Class <U> clazz)
ÁöÁ¤µÈ Ŭ·¡½º °´Ã¼¿¡ ÀÇÇØ ³ªÅ¸³»Áö´Â Ŭ·¡½ºÀÇ ¼ºê Ŭ·¡½º¸¦ ³ªÅ¸³»±â À§Çؼ ÀÌ Class °´Ã¼¸¦ ij½ºÆ® ÇÕ´Ï´Ù. |
|
T |
cast (Object obj)
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿¡ °´Ã¼¸¦ ij½ºÆ® ÇÕ´Ï´Ù. |
|
boolean |
desiredAssertionStatus ()
ÀÌ ¸Þ¼µåÀÇ È£Ãâ½Ã¿¡ ÀÌ Å¬·¡½º¸¦ ÃʱâÈÇÏ´Â °æ¿ì, Ŭ·¡½º¿¡ ÇÒ´çÇÒ ¼ö ÀÖ´Â ¼±¾ð ½ºÅ×ÀÌÅͽº¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
static Class <? > |
forName (String className)
ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀθíÀ» °¡Áö´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿¡ °ü·ÃµÈ, Class °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
static Class <? > |
forName (String name,
boolean initialize,
ClassLoader loader)
ÁöÁ¤µÈ Ŭ·¡½º ·Î´õ¸¦ »ç¿ëÇØ, ÁöÁ¤µÈ ij¸¯ÅÍ ¶óÀθíÀ» °¡Áö´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿¡ °ü·ÃµÈ Class °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
|
getAnnotation (Class <A> annotationClass)
ÁöÁ¤µÈ ÇüÅÂÀÇ ÁÖ¼®ÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â ÁöÁ¤µÈ ÇüÅÂÀÇ ¿ä¼ÒÀÇ ÁÖ¼®À» ¸®ÅÏÇÕ´Ï´Ù. |
|
Annotation [] |
getAnnotations ()
ÀÌ ¿ä¼Ò¿¡ Á¸ÀçÇÏ´Â ¸ðµç ÁÖ¼®À» ¸®ÅÏÇÕ´Ï´Ù (ÀÌ ¿ä¼Ò¿¡ ÁÖ¼®ÀÌ ¾ø´Â °æ¿ì´Â ±æÀÌ Á¦·ÎÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù). |
|
String |
getCanonicalName ()
Java ¾ð¾î »ç¾çÀÇ Á¤ÀÇ¿¡ µû¶ó, ±âº»ÀÌ µÇ´Â Ŭ·¡½ºÀÇ Ç¥ÁظíÀ» ¸®ÅÏÇÕ´Ï´Ù. |
|
Class [] |
getClasses ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ ¸â¹öÀÎ, ¸ðµç public Ŭ·¡½º ¹× ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â Class °´Ã¼¸¦ Æ÷ÇÔÇϰí ÀÖ´Â ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. |
|
ClassLoader |
getClassLoader ()
Ŭ·¡½ºÀÇ Å¬·¡½º ·Î´õ¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Class <? > |
getComponentType ()
¹è¿ÀÇ ÄÄÆÛ³ÍÆ®ÇüÀ» ³ªÅ¸³»´Â Class ¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Constructor <T > |
getConstructor (Class ... parameterTypes)
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ ÁöÁ¤µÈ public »ý¼ºÀÚ¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Constructor °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Constructor [] |
getConstructors ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ ¸ðµç public »ý¼ºÀÚ¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Constructor °´Ã¼¸¦ Æ÷ÇÔÇϰí ÀÖ´Â ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. |
|
Annotation [] |
getDeclaredAnnotations ()
ÀÌ ¿ä¼Ò¿¡ Á÷Á¢ Á¸ÀçÇÏ´Â ¸ðµç ÁÖ¼®À» ¸®ÅÏÇÕ´Ï´Ù. |
|
Class [] |
getDeclaredClasses ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ ¸â¹ö·Î¼ ¼±¾ðµÈ ¸ðµç Ŭ·¡½º ¹× ÀÎÅÍÆäÀ̽º¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Class °´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. |
|
Constructor <T > |
getDeclaredConstructor (Class ... parameterTypes)
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ »ý¼ºÀÚ¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Constructor °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Constructor [] |
getDeclaredConstructors ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º¿¡ ÀÇÇØ ¼±¾ðµÈ ¸ðµç »ý¼ºÀÚ¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Constructor °´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. |
|
Field |
getDeclaredField (String name)
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ ¼±¾ð Çʵ带 ¸®Ç÷ºÆ®
ÇÏ´Â Field °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Field [] |
getDeclaredFields ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿¡ ÀÇÇØ ¼±¾ðµÈ ¸ðµç Çʵ带 ¸®Ç÷ºÆ®
ÇÏ´Â Field °´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. |
|
Method |
getDeclaredMethod (String name,
Class ... parameterTypes)
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ ¼±¾ð ¸Þ¼µå¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Method °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Method [] |
getDeclaredMethods ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿¡ ÀÇÇØ ¼±¾ðµÈ ¸ðµç ¸Þ¼µå¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Method °´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. |
|
Class <? > |
getDeclaringClass ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ ´Ù¸¥ Ŭ·¡½ºÀÇ ¸â¹öÀÇ °æ¿ì´Â ±×°ÍÀÌ ¼±¾ðµÈ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Class <? > |
getEnclosingClass ()
±âº»ÀÌ µÇ´Â Ŭ·¡½º¸¦ Á÷Á¢ µÑ·¯½Î´Â Ŭ·¡½º¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Constructor <? > |
getEnclosingConstructor ()
ÀÌ Class °´Ã¼°¡ »ý¼ºÀÚ³»ÀÇ ·ÎÄà Ŭ·¡½º ¶Ç´Â À͸í Ŭ·¡½º¸¦ ³ªÅ¸³»´Â °æ¿ì´Â ±âº»ÀÌ µÇ´Â Ŭ·¡½º¸¦ Á÷Á¢ µÑ·¯½Î´Â »ý¼ºÀÚ¸¦ ³ªÅ¸³»´Â Constructor °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Method |
getEnclosingMethod ()
ÀÌ Class °´Ã¼°¡ ¸Þ¼µå³»ÀÇ ·ÎÄà Ŭ·¡½º ¶Ç´Â À͸í Ŭ·¡½º¸¦ ³ªÅ¸³»´Â °æ¿ì´Â ±âº»ÀÌ µÇ´Â Ŭ·¡½º¸¦ Á÷Á¢ µÑ·¯½Î´Â ¸Þ¼µå¸¦ ³ªÅ¸³»´Â Method °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
T [] |
getEnumConstants ()
ÀÌ enum Ŭ·¡½ºÀÇ ¿ä¼Ò¸¦ µ¹·ÁÁÖ´ÂÁö, ÀÌ Class °´Ã¼°¡ enum ÇüÀ» ³ªÅ¸³»Áö ¾Ê´Â °æ¿ì´Â nullÀ» ¸®ÅÏÇÕ´Ï´Ù. |
|
Field |
getField (String name)
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ public ¸â¹ö Çʵ带 ¸®Ç÷ºÆ®
ÇÏ´Â Field °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Field [] |
getFields ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ¸ðµç ¾×¼¼½º °¡´ÉÇÑ public Çʵ带 ¸®Ç÷ºÆ®
ÇÏ´Â Field °´Ã¼¸¦ º¸°ü À¯ÁöÇϰí ÀÖ´Â ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. |
|
Type [] |
getGenericInterfaces ()
ÀÌ °´Ã¼¿¡ ÀÇÇØ ³ªÅ¸³»Áö´Â ÀÎÅÍÆäÀ̽º ¶Ç´Â Ŭ·¡½º¿¡ ÀÇÇØ Á÷Á¢ ±¸ÇöµÇ´Â ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â Type¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Type |
getGenericSuperclass ()
ÀÌ Class·Î ³ªÅ¸³»Áö´Â ¿£Æ¼Æ¼ (Ŭ·¡½º, ÀÎÅÍÆäÀ̽º, ¿ø½ÃÇü, ¶Ç´Â void)ÀÇ Á÷Á¢ÀûÀÎ ½´ÆÛ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Type¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Class [] |
getInterfaces ()
ÀÌ °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿¡ ÀÇÇØ ±¸ÇöµÇ´Â ÀÎÅÍÆäÀ̽º¸¦ ÃëµæÇÕ´Ï´Ù. |
|
Method |
getMethod (String name,
Class ... parameterTypes)
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ public ¸â¹ö ¸Þ¼µå¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Method °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
Method [] |
getMethods ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ¸ðµç public ¡¸¸â¹ö¡¹¸Þ¼µå¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Method °´Ã¼¸¦ Æ÷ÇÔÇϰí ÀÖ´Â ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. |
|
int |
getModifiers ()
ÀÌ Å¬·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ Java ¾ð¾î ¼ö½ÄÀÚ¸¦ Á¤¼öÇü¿¡ encodeÀÇÇØ ¸®ÅÏÇÕ´Ï´Ù. |
|
String |
getName ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â ¿£Æ¼Æ¼ (Ŭ·¡½º, ÀÎÅÍÆäÀ̽º, ¹è¿ Ŭ·¡½º, ¿ø½ÃÇü, ¶Ç´Â void)ÀÇ À̸§À» String·Î ¼ ¸®ÅÏÇÕ´Ï´Ù. |
|
Package |
getPackage ()
ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¸¦ ÃëµæÇÕ´Ï´Ù. |
|
ProtectionDomain |
getProtectionDomain ()
ÀÌ Å¬·¡½ºÀÇ ProtectionDomain À»
¸®ÅÏÇÕ´Ï´Ù. |
|
URL |
getResource (String name)
ÁöÁ¤µÈ À̸§ÀÇ ÀÚ¿øÀ» ã½À´Ï´Ù. |
|
InputStream |
getResourceAsStream (String name)
ÁöÁ¤µÈ À̸§ÀÇ ÀÚ¿øÀ» ã½À´Ï´Ù. |
|
Object [] |
getSigners ()
ÀÌ Å¬·¡½ºÀÇ ¼¸íÀÚ¸¦ ÃëµæÇÕ´Ï´Ù. |
|
String |
getSimpleName ()
¿ø½Ã Äڵ峻¿¡¼ ÁöÁ¤µÇ¾ú´ø ´ë·Î ±âº»ÀÌ µÇ´Â Ŭ·¡½ºÀÇ ´Ü¼ø¸íÀ» ¸®ÅÏÇÕ´Ï´Ù. |
|
Class <? super T > |
getSuperclass ()
ÀÌ Class ·Î
³ªÅ¸³»Áö´Â ¿£Æ¼Æ¼ (Ŭ·¡½º, ÀÎÅÍÆäÀ̽º, ¿ø½ÃÇü, ¶Ç´Â void)ÀÇ ½´ÆÛ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class ¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
TypeVariable <Class <T >>[] |
getTypeParameters ()
GenericDeclaration °´Ã¼¿¡ ÀÇÇØ ³ªÅ¸³»Áö´Â ¹ü¿ëÀûÀÎ ¼±¾ðÀ¸·Î ¼±¾ðµÈ ÇüÅ º¯¼ö¸¦ ³ªÅ¸³»´Â TypeVariable °´Ã¼ÀÇ ¹è¿À» ¼±¾ð¼ø¼¿¡ ¸®ÅÏÇÕ´Ï´Ù. |
|
boolean |
isAnnotation ()
Class °´Ã¼°¡ ¾î³ëÅ×À̼ÇÀ» ³ªÅ¸³»´Â °æ¿ì´Â true¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
boolean |
isAnnotationPresent (Class <? extends Annotation > annotationClass)
ÁöÁ¤µÈ ÇüÅÂÀÇ ÁÖ¼®ÀÌ ÀÌ ¿ä¼Ò¿¡ Á¸ÀçÇÏ´Â °æ¿ì´Â true¸¦ µ¹·ÁÁÖ°í, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
boolean |
isAnonymousClass ()
±âº»ÀÌ µÇ´Â Ŭ·¡½º°¡ À͸í Ŭ·¡½ºÀÎ °æ¿ì¸¸ true¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
boolean |
isArray ()
ÀÌ Class °´Ã¼°¡ ¹è¿ Ŭ·¡½º¸¦ ³ªÅ¸³¾Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. |
|
boolean |
isAssignableFrom (Class <? > cls)
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ ÁöÁ¤µÈ Class ÆÄ¶ó¹ÌÅͰ¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿Í µ¿ÀÏÇÑÁö ¾î¶²Áö, ȤÀº ±× ½´ÆÛ Ŭ·¡½º ȤÀº ½´ÆÛ ÀÎÅÍÆäÀ̽ºÀÏÁö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. |
|
boolean |
isEnum ()
ÀÌ Å¬·¡½º°¡ ¿ø½Ã ÄÚµå·Î enum ·Î¼ ¼±¾ðµÇ¾úÀ» °æ¿ì¸¸ true¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
boolean |
isInstance (Object obj)
ÁöÁ¤µÈ Object ÀÌ
ÀÌ Class °¡ ³ªÅ¸³»´Â °´Ã¼¿Í ´ëÀÔ È£È¯ÀÇ °ü°è¿¡ ÀÖÀ»Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. |
|
boolean |
isInterface ()
ÁöÁ¤µÈ Class °´Ã¼°¡ ÀÎÅÍÆäÀ̽ºÇüÀ» ³ªÅ¸³¾Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. |
|
boolean |
isLocalClass ()
±âº»ÀÌ µÇ´Â Ŭ·¡½º°¡ ·ÎÄà Ŭ·¡½ºÀÎ °æ¿ì¸¸ true¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
boolean |
isMemberClass ()
±âº»ÀÌ µÇ´Â Ŭ·¡½º°¡ ¸â¹ö Ŭ·¡½ºÀÎ °æ¿ì¸¸ true¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
boolean |
isPrimitive ()
ÁöÁ¤µÈ Class °´Ã¼°¡ ¿ø½ÃÇü
À» ³ªÅ¸³¾Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. |
|
boolean |
isSynthetic ()
ÀÌ Å¬·¡½º°¡ ÇÕ¼º Ŭ·¡½ºÀÎ °æ¿ì´Â true¸¦ µ¹·ÁÁÖ°í, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
|
T |
newInstance ()
ÀÌ Class °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ »õ·Î¿î ÀνºÅϽº¸¦ »ý¼ºÇÕ´Ï´Ù. |
|
String |
toString ()
°´Ã¼¸¦ ij¸¯ÅÍ ¶óÀÎÀ¸·Î º¯È¯ÇÕ´Ï´Ù. |
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
¸Þ¼µåÀÇ »ó¼¼ |
---|
public String toString()
getName
°¡ µ¹·ÁÁÖ´Â Çü½ÄÀÇ ¿ÏÀü ¼ö½Ä Ŭ·¡½º¸íÀ̶ó°í ÇÏ´Â ¼ø¼·Î Ç¥ÇöµË´Ï´Ù. ÀÌ Class
°´Ã¼°¡ ¿ø½ÃÇü
À» ³ªÅ¸³»´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ¿ø½ÃÇüÀÇ À̸§À» µ¹·ÁÁÖ°í, void¸¦ ³ªÅ¸³»´Â °æ¿ì´Â ¡¸void¡¹¸¦ ¸®ÅÏÇÕ´Ï´Ù.
Object
³»ÀÇ toString
public static Class <? > forName(String className) throws ClassNotFoundException
Class
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸Þ¼µå¸¦ È£ÃâÇÏ´Â °ÍÀº ´ÙÀ½ÀÇ ±â¼ú¿¡ »ó´çÇÕ´Ï´Ù.
¿©±â¼,Class.forName(className, true, currentLoader)
currentLoader
´Â
ÇöÀçÀÇ Å¬·¡½º¸¦ Á¤ÀÇÇϴ Ŭ·¡½º ·Î´õ¸¦ ³ªÅ¸³À´Ï´Ù.
¿¹¸¦ µé¾î ¾Æ·¡ÀÇ ±â¼úÀº, java.lang.Thread
¶ó´Â À̸§ÀÇ Å¬·¡½ºÀÇ ½ÇÇà½Ã¿¡ ÀÖ¾î¼ÀÇ Class
±â¼úÀÚ¸¦ ¸®ÅÏÇÕ´Ï´Ù.
Class t = Class.forName("java.lang.Thread")
forName("X") È£Ãâ¿¡ÀÇÇØ X ¶ó°í Çϴ Ŭ·¡½º°¡ Ãʱâȵ˴ϴÙ.
className
- ¿ä±¸Çϴ Ŭ·¡½ºÀÇ ¿ÏÀü ¼ö½Ä¸í
Class
°´Ã¼
LinkageError
- ¸µÅ°Áö¿¡ ½ÇÆÐÇßÀ» °æ¿ì
ExceptionInInitializerError
- ÀÌ ¸Þ¼µå¿¡
ÇÑ ÃʱâÈ¿¡ ½ÇÆÐÇßÀ» °æ¿ì
ClassNotFoundException
- Ŭ·¡½º°¡ ¹ß°ßµÇÁö ¾Ê¾Ò´ø °æ¿ìpublic static Class <? > forName(String name, boolean initialize, ClassLoader loader) throws ClassNotFoundException
Class
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ¿ÏÀü ¼ö½Ä¸íÀ» (getName
°¡ µ¹·ÁÁÖ´Â Çü½Ä°ú °°Àº Çü½Ä¿¡¼) ÁöÁ¤Çϸé, ÀÌ ¸Þ¼µå´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¸¦ ã¾Æ³» ·ÎµåÇØ, ¸µÅ©ÇÏ·Á°í ÇÕ´Ï´Ù. Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¸¦ ·ÎµåÇÏ·Á¸é,
ÁöÁ¤µÈ Ŭ·¡½º ·Î´õ°¡ »ç¿ëµË´Ï´Ù. loader
ÆÄ¶ó¹ÌÅͰ¡ nullÀÎ °æ¿ì, Ŭ·¡½º´Â bootstrap Ŭ·¡½º ·Î´õ¸¦ »ç¿ëÇØ ·Îµå µË´Ï´Ù. initialize
ÆÄ¶ó¹ÌÅͰ¡ true
·Î
±×¶§±îÁö ÃʱâȵǾî ÀÖÁö ¾ÊÀº °æ¿ì¸¸, Ŭ·¡½º´Â Ãʱâȵ˴ϴÙ.
name
°¡ ¿ø½ÃÇü
¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì, ¹«¸í ÆÐŰÁö³»¿¡¼ name
¶ó´Â À̸§ÀÇ »ç¿ëÀÚ Á¤ÀÇÀÇ Å¬·¡½º¸¦ ã¾Æ³»·Á°í ÇÕ´Ï´Ù. ÀÌ ¶§¹®¿¡
ÀÌ ¸Þ¼µå¸¦ »ç¿ëÇØ, ¿ø½ÃÇü
¶Ç´Â void¸¦ ³ªÅ¸³»´Â Class
°´Ã¼¸¦ ÃëµæÇÒ ¼ö ¾ø½À´Ï´Ù.
name
°¡ ¹è¿ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â °æ¿ì, ¹è¿ Ŭ·¡½ºÀÇ ÄÄÆÛ³ÍÆ®ÇüÀº ·Îµå µË´Ï´Ù¸¸, ÃʱâȵÇÁö ¾Ê½À´Ï´Ù.
¿¹¸¦ µé¾î ÀνºÅϽº ¸Þ¼µå¿¡¼´Â
´Â ´ÙÀ½°ú °°½À´Ï´Ù.Class.forName("Foo")
´Ù¸¸, ÀÌ ¸Þ¼µå´Â ¡¸Java ¾ð¾î »ç¾ç¡¹ÀÇ ¼½¼Ç 12.2, 12.3, 12.4 ·Î ÁöÁ¤µÈ, ·Îµå, ¸µÅ©, ¶Ç´Â ÃʱâÈ¿¡ °ü·ÃµÈ ¿¡·¯¸¦ Throw ÇÕ´Ï´Ù. ÀÌ ¸Þ¼µå´Â ¿ä±¸µÈ Ŭ·¡½º°¡ È£ÃâÇØ ¿·À¸·ÎºÎÅÍ ¾×¼¼½º °¡´ÉÇÑÁö ¾î¶²Áö¸¦ üũÇÏÁö ¾Ê½À´Ï´Ù.Class.forName("Foo", true, this.getClass(). getClassLoader())
loader
°¡ null
·Î
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, È£ÃâÃøÀÇ Å¬·¡½º ·Î´õ°¡ nullÀÌ ¾Æ´Ñ °æ¿ì, ÀÌ ¸Þ¼µå´Â ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkPermission
¸Þ¼µå¸¦ RuntimePermission("getClassLoader")
Á¢±Ù ±ÇÇÑÀ» »ç¿ëÇØ È£ÃâÇÏ´Â °Í¿¡ÀÇÇØ bootstrap Ŭ·¡½º ·Î´õ¿¡ ¹®Á¦ ¾ø°Ô ¾×¼¼½º ÇÒ ¼ö ÀÖ´Â °ÍÀ» º¸ÁõÇÕ´Ï´Ù.
name
- ¿ä±¸Çϴ Ŭ·¡½ºÀÇ ¿ÏÀü ¼ö½Ä¸íinitialize
- Ŭ·¡½º¸¦ ÃʱâÈÇÒ ÇÊ¿äÀÇ À¯¹«loader
- Ŭ·¡½ºÀÇ ·Îµå¿øÀÏ Çʿ䰡 Àִ Ŭ·¡½º ·Î´õ
LinkageError
- ¸µÅ°Áö¿¡ ½ÇÆÐÇßÀ» °æ¿ì
ExceptionInInitializerError
- ÀÌ ¸Þ¼µå¿¡
ÇÑ ÃʱâÈ¿¡ ½ÇÆÐÇßÀ» °æ¿ì
ClassNotFoundException
- ÁöÁ¤µÈ Ŭ·¡½º ·Î´õ¿¡ ÀÇÇØ Ŭ·¡½º°¡ ¹ß°ßµÇÁö ¾Ê¾Ò´ø °æ¿ìforName(String)
,
ClassLoader
public T newInstance() throws InstantiationException, IllegalAccessException
new
½Ä¿¡ ºñ¾îÀÖ´Â Àμö ¸®½ºÆ®¸¦ ÁöÁ¤ÇßÀ» °æ¿ì¿Í °°ÀÌ, Ŭ·¡½ºÀÇ ÀνºÅϽº°¡ »ý¼ºµË´Ï´Ù. Ŭ·¡½º´Â ÃʱâȵǾî ÀÖÁö ¾ÊÀ¸¸é Ãʱâȵ˴ϴÙ.
ÀÌ ¸Þ¼µå´Â È®ÀÎÀÌ ³¡³ ¿¹¿Ü µî, nullary »ý¼ºÀÚ¿¡ ÀÇÇØ Throw µÈ ¿¹¿Ü¸¦ º¸³»´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä. ÀÌ ¸Þ¼µå¸¦ »ç¿ëÇÏ´Â °ÍÀ¸·Î ±× ¿ÜÀÇ °æ¿ì¿¡´Â ÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ ½ÇÇàµÇ´Â ÄÄÆÄÀϽÃÀÇ ¿¹¿Ü È®ÀÎÀ» È¿°úÀûÀ¸·Î ¿ìȸµµ·Î ÇÒ ¼ö ÀÖ½À´Ï´Ù. Constructor.newInstance
¸Þ¼µå´Â (È®ÀÎ ³¡³) InvocationTargetException
»ý¼ºÀÚ¿¡ ÀÇÇØ Throw µÈ ¿¹¿Ü¸¦°¨½Î´Â °ÍÀ¸·Î ÀÌ ¹®Á¦¸¦ ȸÇÇÇÕ´Ï´Ù.
IllegalAccessException
- Ŭ·¡½º ¶Ç´Â ±× nullary »ý¼ºÀÚ¿¡ ¾×¼¼½º ÇÒ ¼ö ¾ø´Â °æ¿ì
InstantiationException
- ÀÌ Class
°¡ Ãß»ó Ŭ·¡½º, ÀÎÅÍÆäÀ̽º, ¹è¿ Ŭ·¡½º, ¿ø½ÃÇü, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì, Ŭ·¡½º°¡ nullary »ý¼ºÀÚ¸¦ º¸°ü À¯ÁöÇÏÁö ¾Ê´Â °æ¿ì, ȤÀº ÀνºÅϽºÀÇ »ý¼ºÀÌ ´Ù¸¥ ÀÌÀ¯·Î½á ½ÇÆÐÇßÀ» °æ¿ì
ExceptionInInitializerError
- ÀÌ ¸Þ¼µå¿¡
ÇÑ ÃʱâȰ¡ ½ÇÆÐÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.PUBLIC)
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ »õ·Î¿î ÀνºÅϽºÀÇ ÀÛ¼ºÀ» Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public boolean isInstance(Object obj)
Object
ÀÌ
ÀÌ Class
°¡ ³ªÅ¸³»´Â °´Ã¼¿Í ´ëÀÔ È£È¯ÀÇ °ü°è¿¡ ÀÖÀ»Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼µå´Â Java ¾ð¾îÀÇ instanceof
¿¬»êÀÚ¿Í µ¿ÀûÀ¸·Î °°½À´Ï´Ù. ÁöÁ¤µÈ Object
Àμö°¡ nullÀº ¾Æ´Ï°í, ÀÌ Class
°´Ã¼°¡ ³ªÅ¸³»´Â ÂüÁ¶Çü¿¡ ClassCastException
À»
Throw ÇÏ´Â ÀÏ ¾øÀÌ Ä³½ºÆ® ÇÒ ¼ö ÀÖ´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â true
¸¦ ¸®ÅÏÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
¸¦ ¸®ÅÏÇÕ´Ï´Ù.
ƯÈ÷, ÀÌ Class
°´Ã¼°¡ ¼±¾ð Ŭ·¡½º¸¦ ³ªÅ¸³¾ ¶§´Â ÀÌ ¸Þ¼µå´Â ÁöÁ¤µÈ Object
Àμö°¡ Ç¥Çö Ŭ·¡½º (¶Ç´Â ±× ¼ºê Ŭ·¡½º)ÀÇ ÀνºÅϽºÀÇ °æ¿ì¿¡ true
¸¦, ±×·¸Áö ¾ÊÀº °æ¿ì¿¡ false
¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ Class
°´Ã¼°¡ ¹è¿ Ŭ·¡½º¸¦ ³ªÅ¸³¾ ¶§´Â Ç׵ȯ ¶Ç´Â È®Àå ÂüÁ¶ º¯È¯À» ÀÌ¿ëÇØ ÁöÁ¤µÈ Object
Àμö¸¦ ¹è¿ Ŭ·¡½ºÀÇ °´Ã¼·Î º¯È¯ÇÒ ¼ö ÀÖ´Â °æ¿ì¿¡ true
¸¦, ±×·¸Áö ¾ÊÀº °æ¿ì¿¡ false
¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ Class
°´Ã¼°¡ ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³¾ ¶§´Â ÁöÁ¤µÈ Object
ÀμöÀÇ Å¬·¡½º ¶Ç´Â ½´ÆÛ Ŭ·¡½º°¡ ÀÌ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â °æ¿ì¿¡ true
¸¦, ±×·¸Áö ¾ÊÀº °æ¿ì¿¡ false
¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ Class
°´Ã¼°¡ ¿ø½ÃÇü
À» ³ªÅ¸³»´Â °æ¿ì´Â false
¸¦ ¸®ÅÏÇÕ´Ï´Ù.
obj
- üũ ´ë»óÀÇ °´Ã¼
obj
°¡ ÀÌ Å¬·¡½ºÀÇ ÀνºÅϽºÀÇ °æ¿ì´Â truepublic boolean isAssignableFrom(Class <? > cls)
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ ÁöÁ¤µÈ Class
ÆÄ¶ó¹ÌÅͰ¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿Í µ¿ÀÏÇÑÁö ¾î¶²Áö, ȤÀº ±× ½´ÆÛ Ŭ·¡½º ȤÀº ½´ÆÛ ÀÎÅÍÆäÀ̽ºÀÏÁö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ¾îµò°¡¿¡ µé¾î¸Â´Â °æ¿ì´Â true
¸¦, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ Class
°´Ã¼°¡ ¿ø½ÃÇü
À» ³ªÅ¸³¾ ¶§´Â ÁöÁ¤µÈ Class
ÆÄ¶ó¹ÌÅÍ¿Í ÀÌ Class
°´Ã¼°¡ ÀÏÄ¡ÇÏ´Â °æ¿ì¿¡ true
¸¦, ±×·¸Áö ¾ÊÀº °æ¿ì¿¡ false
¸¦ ¸®ÅÏÇÕ´Ï´Ù.
ƯÈ÷ ÀÌ ¸Þ¼µå´Â ÁöÁ¤µÈ Class
ÆÄ¶ó¹ÌÅͰ¡ Ç¥ÇöÇÏ´Â ÇüŸ¦, Ç׵ȯ ¶Ç´Â È®Àå ÂüÁ¶ º¯È¯À» »ç¿ëÇØ, ÀÌ Class
°´Ã¼°¡ ³ªÅ¸³»´Â ÇüÅ·Πº¯È¯ÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ Á¶»çÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ¡¸Java ¾ð¾î »ç¾ç¡¹ÀÇ ¼½¼Ç 5.1. 1 À¸·Î 5.1. 4¸¦ ÂüÁ¶ÇϽʽÿÀ.
cls
- üũ ´ë»óÀÇ Class
°´Ã¼
cls
ÇüÀÇ °´Ã¼°¡ ÀÌ Å¬·¡½º¿¡ ÇÒ´çÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ ³ªÅ¸³»´Â boolean
Ä¡
NullPointerException
- ÁöÁ¤µÈ Class ÆÄ¶ó¹ÌÅͰ¡ nullÀÎ °æ¿ìpublic boolean isInterface()
Class
°´Ã¼°¡ ÀÎÅÍÆäÀ̽ºÇüÀ» ³ªÅ¸³¾Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
true
, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
public boolean isArray()
Class
°´Ã¼°¡ ¹è¿ Ŭ·¡½º¸¦ ³ªÅ¸³¾Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
true
, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
public boolean isPrimitive()
Class
°´Ã¼°¡ ¿ø½ÃÇü
À» ³ªÅ¸³¾Áö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
8°³ÀÇ Java
¿ø½ÃÇü
°ú void¸¦ ³ªÅ¸³»´Â 9°³ÀÇ Á¤Àǰ¡ ³¡³ Class
°´Ã¼°¡ ÀÖ½À´Ï´Ù. À̰͵éÀº Java °¡»ó ¸Ó½ÅÀÌ ÀÛ¼ºÇØ, ÇØ´çÇÏ´Â ¿ø½ÃÇü
°ú °°Àº À̸§À» °¡Áý´Ï´Ù. Áï, boolean
, byte
, char
, short
, int
, long
, float
, double
¹× void ÀÔ´Ï´Ù.
ÀÌ·¯ÇÑ °´Ã¼¿¡´Â ¾Æ·¡ÀÇ public static final º¯¼ö¸¦ »ç¿ëÇÏ´Â ¹æ¹ý¿¡ µû¶ó¼¸¸ ¾×¼¼½º ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç, ÀÌ ¸Þ¼µå°¡ true
¸¦ µ¹·ÁÁÖ´Â °ÍÀº ÀÌ·¯ÇÑ 9°³ÀÇ Class
°´Ã¼·Î ÇÑÁ¤µË´Ï´Ù.
Boolean.TYPE
,
Character.TYPE
,
Byte.TYPE
,
Short.TYPE
,
Integer.TYPE
,
Long.TYPE
,
Float.TYPE
,
Double.TYPE
,
Void.TYPE
public boolean isAnnotation()
isInterface()
µµ
true¸¦ ¸®ÅÏÇÕ´Ï´Ù.
public boolean isSynthetic()
public String getName()
¡¸Java ¾ð¾î »ç¾ç Á¦ 2 ÆÇ¡¹À¸·Î ±ÔÁ¤µÇ°í ÀÖµµ·Ï, ÀÌ Å¬·¡½º °´Ã¼°¡ ¹è¿ÇüÀÌ ¾Æ´Ñ ÂüÁ¶ÇüÀ» ³ªÅ¸³»´Â °æ¿ì´Â Ŭ·¡½ºÀÇ ¹ÙÀ̳ʸ®¸íÀÌ ¸®Åϵ˴ϴ٠.
ÀÌ Å¬·¡½º °´Ã¼°¡ ¿ø½ÃÇü ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì, ¸®ÅÏµÈ À̸§Àº ¿ø½ÃÇü ¶Ç´Â void¿¡ ´ëÀÀÇÏ´Â Java ¾ð¾î Ű¿öµå¿Í µî°¡ÀÎ String ÀÔ´Ï´Ù.
ÀÌ Å¬·¡½º °´Ã¼°¡ ¹è¿ÀÇ Å¬·¡½º¸¦ ³ªÅ¸³»´Â °æ¿ì, À̸§ÀÇ ³»ºÎ Çü½ÄÀº ¹è¿ÀÇ »óÀÚÀÇ ±íÀ̸¦ ³ªÅ¸³»´Â 1°³ ÀÌ»óÀÇ ¡¸[¡¹¹®ÀÚ, ¿ä¼ÒÇüÀÇ À̸§À̶ó°í ÇÏ´Â ¼ø¼·Î ±¸¼ºµË´Ï´Ù. ¿ä¼ÒÇüÀÇ À̸§ÀÇ ÀÎÄÚµùÀº ÀÌÇÏ´ë·ÎÀÔ´Ï´Ù.
¿ä¼ÒÇü ÀÎÄÚµù boolean Z byte B char C class ¶Ç´Â interface Lclassname; double D float F int I long J short S
Ŭ·¡½º¸í ¶Ç´Â ÀÎÅÍÆäÀ̽º¸íÀÇ classname´Â »ó±âÀÇ ¿¹ÀÇ °°°Ô Ŭ·¡½ºÀÇ ¹ÙÀ̳ʸ®¸íÀ¸·Î ÁöÁ¤µË´Ï´Ù.
·Ê:
String.class.getName() returns "java.lang.String" byte.class.getName() returns "byte" (new Object[3]). getClass(). getName() returns "[Ljava.lang.Object;" (new int[3][4][5][6][7][8][9]). getClass(). getName() returns "[[[[[[[I"
public ClassLoader getClassLoader()
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, È£ÃâÃøÀÇ Å¬·¡½º ·Î´õ°¡ nullÀÌ ¾Æ´Ï°í, Ŭ·¡½º ·Î´õ°¡ ÇÊ¿äÇÏ°Ô µÇ´Â Ŭ·¡½ºÀÇ Å¬·¡½º ·Î´õÀÇ »óÀ§ ·Î´õµµ ¾Æ´Ñ °æ¿ì, ÀÌ ¸Þ¼µå´Â ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkPermission
¸Þ¼µå¸¦ RuntimePermission("getClassLoader")
Á¢±Ù ±ÇÇÑÀ» »ç¿ëÇØ È£ÃâÇÏ´Â °Í¿¡ ÀÇÇØ Ŭ·¡½ºÀÇ Å¬·¡½º ·Î´õ¿¡ ¾×¼¼½º ÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ È®ÀÎÇÕ´Ï´Ù.
ÀÌ °´Ã¼°¡ ¿ø½ÃÇü ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì´Â nullÀÌ ¸®Åϵ˴ϴ٠.
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ±× checkPermission
¸Þ¼µå°¡ Ŭ·¡½ºÀÇ Å¬·¡½º ·Î´õ¿¡°Ô·ÎÀÇ ¾×¼¼½º¸¦ °ÅºÎÇÏ´Â °æ¿ìClassLoader
,
SecurityManager.checkPermission(java.security.Permission)
,
RuntimePermission
public TypeVariable <Class <T >>[] getTypeParameters()
GenericDeclaration
³»ÀÇ getTypeParameters
GenericSignatureFormatError
- ÀÌ ¹ü¿ëÀûÀÎ ¼±¾ðÀÇ ¹ü¿ëÀûÀÎ ¼¸íÀÌ ¡¸Java °¡»ó ¸Ó½Å »ç¾ç Á¦ 3 ÆÇ¡¹À¸·Î ±ÔÁ¤µÇ´Â ¼½Ä¿¡ ÀûÇÕÇÏÁö ¾Ê´Â °æ¿ìpublic Class <? super T > getSuperclass()
Class
·Î
³ªÅ¸³»Áö´Â ¿£Æ¼Æ¼ (Ŭ·¡½º, ÀÎÅÍÆäÀ̽º, ¿ø½ÃÇü, ¶Ç´Â void)ÀÇ ½´ÆÛ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class
¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ Class
°¡
Object
Ŭ·¡½º, ÀÎÅÍÆäÀ̽º, ¿ø½ÃÇü, ¶Ç´Â voidÀÎ °æ¿ì´Â nullÀÌ ¸®Åϵ˴ϴÙ
. ÀÌ °´Ã¼°¡ ¹è¿ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â °æ¿ì´Â Object
Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class
°´Ã¼°¡ ¸®Åϵ˴ϴÙ
.
public Type getGenericSuperclass()
½´ÆÛ Ŭ·¡½º°¡ ÆÄ¶ó¹ÌÅÍÈ µÈ ÇüÅÂÀÇ °æ¿ì, ¸®ÅϵÈ
Type °´Ã¼´Â ¿ø½Ã ÄÚµå·Î »ç¿ëµÇ´Â ½ÇÁ¦ÀÇ ÇüÅ ÆÄ¶ó¹ÌÅ͸¦ ¹Ý¿µÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. ½´ÆÛ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â ÆÄ¶ó¹ÌÅÍÈ µÈ ÇüÅ´ ÀÌÀü ÀÛ¼ºµÇ¾î ÀÖÁö ¾Ê¾Ò´ø °æ¿ì¿¡ ÀÛ¼ºµË´Ï´Ù. ÆÄ¶ó¹ÌÅÍÈ µÈ ÇüÅÂÀÇ ÀÛ¼º ÇÁ·Î¼¼½ºÀÇ ½Ã¸àƽ½º¿¡ ´ëÇØ¼´Â ParameterizedType
¼±¾ðÀ» ÂüÁ¶ÇϽʽÿÀ. ÀÌ Class°¡
Object Ŭ·¡½º, ÀÎÅÍÆäÀ̽º, ¿ø½ÃÇü, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì, nullÀÌ ¸®Åϵ˴ϴÙ
. ÀÌ °´Ã¼°¡ ¹è¿ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â °æ¿ì, Object Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class °´Ã¼°¡ ¸®Åϵ˴ϴÙ
.
GenericSignatureFormatError
- ÀÌ ¹ü¿ëÀûÀΠŬ·¡½ºÀÇ ¼¸íÀÌ ¡¸Java °¡»ó ¸Ó½Å »ç¾ç Á¦ 3 ÆÇ¡¹À¸·Î ±ÔÁ¤µÇ´Â ¼½Ä¿¡ ÀûÇÕÇÏÁö ¾Ê´Â °æ¿ì
TypeNotPresentException
- ¹ü¿ëÀûÀÎ ½´ÆÛ Ŭ·¡½º°¡ Á¸ÀçÇÏÁö ¾Ê´Â ÇüÅ ¼±¾ðÀ» ÂüÁ¶ÇÏ´Â °æ¿ì
MalformedParameterizedTypeException
- ¹ü¿ëÀûÀÎ ½´ÆÛ Ŭ·¡½º°¡ ¾î¶°ÇÑ ÀÌÀ¯¿¡ ÀÇÇØ ÀνºÅϽºÈÇÒ ¼ö ¾ø´Â ÆÄ¶ó¹ÌÅÍÈ µÈ ÇüŸ¦ ÂüÁ¶ÇÏ´Â °æ¿ìpublic Package getPackage()
Ŭ·¡½º¿¡ ºÎ¼ÓµÇ´Â MANIFEST ·Î Á¤º¸°¡ Á¤ÀǵǾúÀ» °æ¿ì¿Í Ŭ·¡½º ·Î´õ°¡ MANIFEST ÀÇ ¼Ó¼ºÀ» °¡Áö´Â ÆÐŰÁö ÀνºÅϽº¸¦ »ý¼ºÇßÀ» °æ¿ì¸¸, ÆÐŰÁö´Â ¹öÀü°ú »ç¾çÀÇ ¼Ó¼ºÀ» °¡Áý´Ï´Ù.
public Class [] getInterfaces()
ÀÌ °´Ã¼°¡ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â °æ¿ì, ¹Ýȯ°ªÀº Ŭ·¡½º¿¡ ÀÇÇØ ±¸ÇöµÇ´Â ¸ðµç ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °´Ã¼¸¦ Æ÷ÇÔÇϰí ÀÖ´Â ¹è¿ÀÔ´Ï´Ù. ¹è¿³»ÀÇ ÀÎÅÍÆäÀ̽º °´Ã¼ÀÇ ¼ø¼´Â ÀÌ °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º¸¦ ¼±¾ðÇÏ´Â implements
Àý³»ÀÇ ÀÎÅÍÆäÀ̽º¸íÀÇ ¼ø¼¿¡ ÀÏÄ¡ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î,
±×·¸´Ù°í ÇÏ´Â ¼±¾ðÀÌ ÀÖ¾î,class Shimmer implements FloorWax, DessertTopping { ... }
s
°ªÀÌ Shimmer
ÀνºÅϽºÀÌ´Ù°í ÇÕ´Ï´Ù. À̶ó°í ÇÏ´Â ½ÄÀÇ °ªÀºs.getClass(). getInterfaces()[0]
FloorWax
ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â Class
°´Ã¼À̸ç, À̶ó°í ÇÏ´Â ½ÄÀÇ °ªÀº,s.getClass(). getInterfaces()[1]
DessertTopping
ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â Class
°´Ã¼ÀÔ´Ï´Ù.
ÀÌ °´Ã¼°¡ ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °æ¿ì, ±× ÀÎÅÍÆäÀ̽º¿¡ ÀÇÇØ È®ÀåµÈ ¸ðµç ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °´Ã¼°¡ ¹è¿³»¿¡ Á¢¾îµì´Ï´Ù. ¹è¿³»ÀÇ ÀÎÅÍÆäÀ̽º °´Ã¼ÀÇ ¼ø¼´Â ÀÌ °´Ã¼°¡ ³ªÅ¸³»´Â ÀÎÅÍÆäÀ̽º¸¦ ¼±¾ðÇÏ´Â extends
Àý³»ÀÇ ÀÎÅÍÆäÀ̽º¸íÀÇ ¼ø¼¿¡ ÀÏÄ¡ÇÕ´Ï´Ù.
ÀÌ °´Ã¼°¡ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏÁö ¾Ê´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ±æÀ̰¡ 0 ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
ÀÌ °´Ã¼°¡ ¿ø½ÃÇü ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ±æÀ̰¡ 0 ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
public Type [] getGenericInterfaces()
½´ÆÛ ÀÎÅÍÆäÀ̽º°¡ ÆÄ¶ó¹ÌÅÍÈ µÈ ÇüÅÂÀÇ °æ¿ì, ¸®ÅϵÈ
Type °´Ã¼´Â ¿ø½Ã ÄÚµå·Î »ç¿ëµÇ´Â ½ÇÁ¦ÀÇ ÇüÅ ÆÄ¶ó¹ÌÅ͸¦ ¹Ý¿µÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù. ½´ÆÛ ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â ÆÄ¶ó¹ÌÅÍÈ µÈ ÇüÅ´ ÀÌÀü ÀÛ¼ºµÇ¾î ÀÖÁö ¾Ê¾Ò´ø °æ¿ì¿¡ ÀÛ¼ºµË´Ï´Ù. ÆÄ¶ó¹ÌÅÍÈ µÈ ÇüÅÂÀÇ ÀÛ¼º ÇÁ·Î¼¼½ºÀÇ ½Ã¸àƽ½º¿¡ ´ëÇØ¼´Â ParameterizedType
¼±¾ðÀ» ÂüÁ¶ÇϽʽÿÀ.
ÀÌ °´Ã¼°¡ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â °æ¿ì, ¹Ýȯ°ªÀº Ŭ·¡½º¿¡ ÀÇÇØ ±¸ÇöµÇ´Â ¸ðµç ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °´Ã¼¸¦ Æ÷ÇÔÇϰí ÀÖ´Â ¹è¿ÀÔ´Ï´Ù. ¹è¿³»ÀÇ ÀÎÅÍÆäÀ̽º °´Ã¼ÀÇ ¼ø¼´Â ÀÌ °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º¸¦ ¼±¾ðÇÏ´Â implements Àý³»ÀÇ ÀÎÅÍÆäÀ̽º¸íÀÇ ¼ø¼¿¡ ÀÏÄ¡ÇÕ´Ï´Ù. ¹è¿ Ŭ·¡½ºÀÇ °æ¿ì, Cloneable ÀÎÅÍÆäÀ̽º¿Í Serializable ÀÎÅÍÆäÀ̽º´Â ±× ¼ø¼·Î ¸®Åϵ˴ϴ٠.
ÀÌ °´Ã¼°¡ ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °æ¿ì, ±× ÀÎÅÍÆäÀ̽º¿¡ ÀÇÇØ È®ÀåµÈ ¸ðµç ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °´Ã¼°¡ ¹è¿³»¿¡ Á¢¾îµì´Ï´Ù. ¹è¿³»ÀÇ ÀÎÅÍÆäÀ̽º °´Ã¼ÀÇ ¼ø¼´Â ÀÌ °´Ã¼°¡ ³ªÅ¸³»´Â ÀÎÅÍÆäÀ̽º¸¦ ¼±¾ðÇÏ´Â extends Àý³»ÀÇ ÀÎÅÍÆäÀ̽º¸íÀÇ ¼ø¼¿¡ ÀÏÄ¡ÇÕ´Ï´Ù.
ÀÌ °´Ã¼°¡ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏÁö ¾Ê´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ±æÀ̰¡ 0 ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
ÀÌ °´Ã¼°¡ ¿ø½ÃÇü ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ±æÀ̰¡ 0 ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
GenericSignatureFormatError
- ÀÌ ¹ü¿ëÀûÀΠŬ·¡½ºÀÇ ¼¸íÀÌ ¡¸Java °¡»ó ¸Ó½Å »ç¾ç Á¦ 3 ÆÇ¡¹À¸·Î ±ÔÁ¤µÇ´Â ¼½Ä¿¡ ÀûÇÕÇÏÁö ¾Ê´Â °æ¿ì
TypeNotPresentException
- ¹ü¿ëÀûÀÎ ½´ÆÛ ÀÎÅÍÆäÀ̽ºÀÇ ¾î¶² °ÍÀΰ¡°¡ Á¸ÀçÇÏÁö ¾Ê´Â ÇüÅ ¼±¾ðÀ» ÂüÁ¶ÇÏ´Â °æ¿ì
MalformedParameterizedTypeException
- ¹ü¿ëÀûÀÎ ½´ÆÛ ÀÎÅÍÆäÀ̽ºÀÇ ¾î¶² °ÍÀΰ¡°¡ ¾î¶°ÇÑ ÀÌÀ¯¿¡ ÀÇÇØ ÀνºÅϽºÈÇÒ ¼ö ¾ø´Â ÆÄ¶ó¹ÌÅÍÈ µÈ ÇüŸ¦ ÂüÁ¶ÇÏ´Â °æ¿ìpublic Class <? > getComponentType()
Class
¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ Å¬·¡½º°¡ ¹è¿ Ŭ·¡½º¸¦ ³ªÅ¸³»Áö ¾Ê´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â nullÀ»
¸®ÅÏÇÕ´Ï´Ù.
Class
Array
public int getModifiers()
public
, protected
, private
, final
, static
, abstract
¹× interface
¿ëÀÇ Java °¡»ó ¸Ó½ÅÀÇ Á¤¼ö·ÎºÎÅÍ ±¸¼ºµË´Ï´Ù. À̰͵éÀº, Modifier
Ŭ·¡½ºÀÇ ¸Þ¼µå¸¦ »ç¿ëÇØ º¹È£È ÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.
±âº»ÀÌ µÇ´Â Ŭ·¡½º°¡ ¹è¿ Ŭ·¡½ºÀÇ °æ¿ì, public
, private
¹× protected
°¢ ¼ö½ÄÀÚ´Â ÄÄÆÛ³ÍÆ®ÇüÀÇ ¼ö½ÄÀÚ¿Í °°½À´Ï´Ù. ÀÌ Class
°¡ ¿ø½ÃÇü
¶Ç´Â voidÀÎ °æ¿ì, public
°¢ ¼ö½ÄÀÚ´Â Ç×»ó true
·Î
protected
¹× private
¼ö½ÄÀÚ´Â Ç×»ó false
ÀÔ´Ï´Ù. ÀÌ °´Ã¼°¡ ¹è¿ Ŭ·¡½º, ¿ø½ÃÇü, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì, final
¼ö½ÄÀÚ´Â Ç×»ó true
·Î
±× ÀÎÅÍÆäÀ̽º ¼ö½ÄÀÚ´Â Ç×»ó false
ÀÔ´Ï´Ù. ´Ù¸¥ ¼ö½ÄÀÚÀÇ °ªÀº ÀÌ ÁöÁ¤¿¡¼´Â ÆÇÁ¤µÇÁö ¾Ê½À´Ï´Ù.
¼ö½ÄÀÚÀÇ encode´Â ¡¸Java °¡»ó ¸Ó½Å »ç¾ç¡¹ÀÇ Ç¥ 4.1 À¸·Î Á¤Àǵǰí ÀÖ½À´Ï´Ù.
int
Modifier
public Object [] getSigners()
public Method getEnclosingMethod()
Method
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì, nullÀ»
¸®ÅÏÇÕ´Ï´Ù.
ƯÈ÷, ±âº»ÀÌ µÇ´Â Ŭ·¡½º°¡ ÇüÅ ¼±¾ð, ÀνºÅϽº ÃʱâÈÀÚ, ½ºÅÂÆ½ ÃʱâÈÀÚ¿¡ ÀÇÇØ Á÷Á¢ µÑ·¯½ÎÀÌ´Â ·ÎÄà Ŭ·¡½º ¶Ç´Â À͸í Ŭ·¡½ºÀÎ °æ¿ì, ÀÌ ¸Þ¼µå´Â nullÀ»
¸®ÅÏÇÕ´Ï´Ù.
public Constructor <? > getEnclosingConstructor()
Constructor
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â null. ƯÈ÷, ±âº»ÀÌ µÇ´Â Ŭ·¡½º°¡ ÇüÅ ¼±¾ð, ÀνºÅϽº ÃʱâÈÀÚ, ¶Ç´Â ½ºÅÂÆ½ ÃʱâÈÀÚ¿¡ ÀÇÇØ Á÷Á¢ µÑ·¯½ÎÀÌ´Â ·ÎÄà Ŭ·¡½º ¶Ç´Â À͸í Ŭ·¡½ºÀÎ °æ¿ì, ÀÌ ¸Þ¼µå´Â nullÀ»
¸®ÅÏÇÕ´Ï´Ù.
public Class <? > getDeclaringClass()
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ ´Ù¸¥ Ŭ·¡½ºÀÇ ¸â¹öÀÇ °æ¿ì´Â ±×°ÍÀÌ ¼±¾ðµÈ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â Class
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ Å¬·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ ´Ù¸¥ Ŭ·¡½ºÀÇ ¸â¹ö°¡ ¾Æ´Ñ °æ¿ì´Â nullÀ»
¸®ÅÏÇÕ´Ï´Ù. ÀÌ Class
°´Ã¼°¡ ¹è¿ Ŭ·¡½º, ¿ø½ÃÇü, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â nullÀ»
¸®ÅÏÇÕ´Ï´Ù.
public Class <? > getEnclosingClass()
public String getSimpleName()
¹è¿ÀÇ ´Ü¼ø¸íÀº ¡¸[]¡¹ÀÌ ºÎ°¡µÈ ÄÄÆÛ³ÍÆ®ÇüÀÇ ´Ü¼ø¸íÀÔ´Ï´Ù. ƯÈ÷, ÄÄÆÛ³ÍÆ®ÇüÀÌ À͸íÀÎ ¹è¿ÀÇ ´Ü¼ø¸íÀº ¡¸[]¡¹ÀÔ´Ï´Ù.
public String getCanonicalName()
public boolean isAnonymousClass()
public boolean isLocalClass()
public boolean isMemberClass()
public Class [] getClasses()
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ ¸â¹öÀÎ, ¸ðµç public Ŭ·¡½º ¹× ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â Class
°´Ã¼¸¦ Æ÷ÇÔÇϰí ÀÖ´Â ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. ½´ÆÛ Ŭ·¡½º·ÎºÎÅÍ »ó¼ÓÇÑ public Ŭ·¡½º ¹× ÀÎÅÍÆäÀ̽ºÀÇ ¸â¹ö ¹× Ŭ·¡½º°¡ ¼±¾ðÇÑ public Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽ºÀÇ ¸â¹öµµ Æ÷ÇԵ˴ϴÙ. ÀÌ Class
°´Ã¼°¡ public ¸â¹ö Ŭ·¡½º³ª ÀÎÅÍÆäÀ̽º¸¦ °¡ÁöÁö ¾Ê´Â °æ¿ì³ª, ¿ø½ÃÇü, ¹è¿ Ŭ·¡½º, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì¿¡´Â ±æÀ̰¡ 0
¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
Class
°´Ã¼ÀÇ ¹è¿
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.PUBLIC)
¸Þ¼µåÀÇ È£ÃâÀÌ ÀÌ Å¬·¡½º³»ÀÇ Å¬·¡½º¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Field [] getFields() throws SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ¸ðµç ¾×¼¼½º °¡´ÉÇÑ public Çʵ带 ¸®Ç÷ºÆ®
ÇÏ´Â Field
°´Ã¼¸¦ º¸°ü À¯ÁöÇϰí ÀÖ´Â ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. ¸®ÅÏµÈ ¹è¿³»ÀÇ ¿ä¼Ò´Â ¼ÒÆ® µÇ¾î Àְųª, ƯÁ¤ÀÇ ¼ø¼°¡ µÇ¾î Àְųª ÇÒ °ÍÀº ¾ø½À´Ï´Ù. Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿¡ ¾×¼¼½º °¡´ÉÇÑ public Çʵ尡 ¾ø´Â °æ¿ì³ª, Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ ¹è¿ Ŭ·¡½º, ¿ø½ÃÇü, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì´Â ±æÀ̰¡ 0
¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
ƯÈ÷, ÀÌ Class
°´Ã¼°¡ Ŭ·¡½º¸¦ ³ªÅ¸³»´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ÀÌ Å¬·¡½º¿Í ±× ¸ðµç ½´ÆÛ Ŭ·¡½ºÀÇ public Çʵ带 ¸®ÅÏÇÕ´Ï´Ù. ÀÌ Class
°´Ã¼°¡ ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °æ¿ì´Â ÀÌ ÀÎÅÍÆäÀ̽º¿Í ¸ðµç ½´ÆÛ ÀÎÅÍÆäÀ̽ºÀÇ Çʵ带 ¸®ÅÏÇÕ´Ï´Ù.
ÀÌ ¸Þ¼µå´Â ¹è¿ Ŭ·¡½ºÀÇ ¾Ï¹¬ÀûÀÎ ±æÀÌ Çʵ带 ¸®Ç÷ºÆ®
ÇÏÁö ¾Ê½À´Ï´Ù. »ç¿ëÀÚ
ÄÚµå·Î ¹è¿À» Á¶ÀÛÇÏ·Á¸é,
Array
Ŭ·¡½ºÀÇ ¸Þ¼µå¸¦ »ç¿ëÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
¡¸Java ¾ð¾î »ç¾ç¡¹ÀÇ ¼½¼Ç 8.2 ·Î 8.3À» ÂüÁ¶ÇϽʽÿÀ.
Field
°´Ã¼ÀÇ ¹è¿
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.PUBLIC)
È£ÃâÀÌ ÀÌ Å¬·¡½º³»ÀÇ Çʵ忡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Method [] getMethods() throws SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ¸ðµç public ¡¸¸â¹ö¡¹¸Þ¼µå¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Method
°´Ã¼¸¦ Æ÷ÇÔÇϰí ÀÖ´Â ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ ¼±¾ðÇÑ °Í ¹× ½´ÆÛ Ŭ·¡½º³ª ½´ÆÛ ÀÎÅÍÆäÀ̽º·ÎºÎÅÍ »ó¼ÓµÈ °Íµµ Æ÷ÇԵ˴ϴÙ. ¹è¿ Ŭ·¡½º´Â Object
Ŭ·¡½º·ÎºÎÅÍ »ó¼ÓµÈ ¸ðµç (public) ¸â¹ö ¸Þ¼µå¸¦ ¸®ÅÏÇÕ´Ï´Ù. ¸®ÅÏµÈ ¹è¿³»ÀÇ ¿ä¼Ò´Â ¼ÒÆ® µÇ¾î Àְųª, ƯÁ¤ÀÇ ¼ø¼°¡ µÇ¾î Àְųª ÇÒ °ÍÀº ¾ø½À´Ï´Ù. ÀÌ Class
°´Ã¼°¡ public ¸â¹ö ¸Þ¼µå°¡ ¾ø´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¸¦ ³ªÅ¸³»´Â °æ¿ì³ª, ¿ø½ÃÇü
¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì´Â ÀÌ ¸Þ¼µå´Â ±æÀ̰¡ 0
¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
Ŭ·¡½º ÃʱâÈ ¸Þ¼µå <clinit>
´Â
¸®ÅϵÈ
¹è¿¿¡ µé¾î°¡ ÀÖÁö ¾Ê½À´Ï´Ù. Ŭ·¡½º°¡ º¹¼öÀÇ public ¸â¹ö ¸Þ¼µå¸¦ °°Àº ÆÄ¶ó¹ÌÅÍÇüÀ¸·Î ¼±¾ðÇϸé, ±×·¯ÇÑ ¸Þ¼µå´Â ¸ðµÎ ¸®ÅÏµÈ ¹è¿¿¡ µé¾î°©´Ï´Ù.
¡¸Java ¾ð¾î »ç¾ç¡¹ÀÇ ¼½¼Ç 8.2 ·Î 8.4¸¦ ÂüÁ¶ÇϽʽÿÀ.
Method
°´Ã¼ÀÇ ¹è¿
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.PUBLIC)
È£ÃâÀÌ ÀÌ Å¬·¡½º³»ÀÇ ¸Þ¼µå¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Constructor [] getConstructors() throws SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ ¸ðµç public »ý¼ºÀÚ¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Constructor
°´Ã¼¸¦ Æ÷ÇÔÇϰí ÀÖ´Â ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. Ŭ·¡½º¿¡ public »ý¼ºÀÚ°¡ ¾ø´Â °æ¿ì, Ŭ·¡½º°¡ ¹è¿ Ŭ·¡½ºÀÇ °æ¿ì, ¶Ç´Â Ŭ·¡½º°¡ ¿ø½ÃÇü
¶Ç´Â void¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â °æ¿ì¿¡´Â ±æÀ̰¡ 0
¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
parameterTypes
¿Í
ÀÏÄ¡ÇÏ´Â °æ¿ì, Method
°´Ã¼¸¦ Æ÷ÇÔÇÑ ¹è¿
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.PUBLIC)
È£ÃâÀÌ ÀÌ Å¬·¡½º³»ÀÇ »ý¼ºÀÚ¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Field getField(String name) throws NoSuchFieldException, SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ public ¸â¹ö Çʵ带 ¸®Ç÷ºÆ®
ÇÏ´Â Field
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. name
ÆÄ¶ó¹ÌÅÍ´Â ¿ä±¸µÇ´Â ÇʵåÀÇ ´Ü¼ø¸íÀ» ÁöÁ¤ÇÏ´Â String
ÀÔ´Ï´Ù.
¸®Ç÷ºÆ® µÇ´Â Çʵå´Â ´ÙÀ½ÀÇ ¾Ë°í¸®ÁòÀ¸·Î °áÁ¤µË´Ï´Ù. ¿©±â¿¡¼´Â ÀÌ °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º¸¦ C ·Î ÇÕ´Ï´Ù.
NoSuchFieldException
°¡ ¹ß»ý µË´Ï´Ù. ¡¸Java ¾ð¾î »ç¾ç¡¹ÀÇ ¼½¼Ç 8.2 ·Î 8.3À» ÂüÁ¶ÇϽʽÿÀ.
name
- Çʵå¸í
name
·Î
ÁöÁ¤µÈ ÀÌ Å¬·¡½ºÀÇ Field
°´Ã¼
NoSuchFieldException
- ÁöÁ¤µÈ À̸§ÀÇ Çʵ尡 ¹ß°ßµÇÁö ¾Ê´Â °æ¿ì
NullPointerException
- name
°¡ null
ÀÎ °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.PUBLIC)
È£ÃâÀÌ ÀÌ Çʵ忡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Method getMethod(String name, Class ... parameterTypes) throws NoSuchMethodException, SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ public ¸â¹ö ¸Þ¼µå¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Method
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. name
ÆÄ¶ó¹ÌÅÍ´Â ¿ä±¸µÇ´Â ¸Þ¼µå¿¡ ´Ü¼ø¸íÀ» ÁöÁ¤ÇÏ´Â String
ÀÔ´Ï´Ù. parameterTypes
ÆÄ¶ó¹ÌÅÍ´Â ¸Þ¼µåÀÇ °¡ÆÄ¶ó¹ÌÅÍÇüÀÌ ¼±¾ðµÈ ¼ø¼·Î ½Äº°ÇÏ´Â Class
°´Ã¼ÀÇ ¹è¿ÀÔ´Ï´Ù. parameterTypes
°¡ null
ÀÎ °æ¿ì´Â ºñ¾îÀÖ´Â ¹è¿°ú °°ÀÌ ´Ù·ç¾îÁý´Ï´Ù.
name
°¡ ¡¸<init>¡¹¶Ç´Â ¡¸<clinit>¡¹ÀÇ °æ¿ì, NoSuchMethodException
°¡ ¹ß»ý µË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì, ¸®Ç÷ºÆ®
µÇ´Â ¸Þ¼µå´Â ´ÙÀ½ÀÇ ¾Ë°í¸®ÁòÀ¸·Î ÁöÁ¤µË´Ï´Ù. ¿©±â¿¡¼´Â ÀÌ °´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º¸¦ C ·Î ÇÕ´Ï´Ù.
¡¸Java ¾ð¾î »ç¾ç¡¹ÀÇ ¼½¼Ç 8.2 ·Î 8.4¸¦ ÂüÁ¶ÇϽʽÿÀ.
name
- ¸Þ¼µåÀÇ À̸§parameterTypes
- ÆÄ¶ó¹ÌÅÍÀÇ ¸®½ºÆ®
name
¹× parameterTypes
¿Í
ÀÏÄ¡ÇÏ´Â Method
°´Ã¼
NoSuchMethodException
- ÀÏÄ¡ÇÏ´Â ¸Þ¼µå°¡ ¹ß°ßµÇÁö ¾Ê´Â °æ¿ì, ȤÀº À̸§ÀÌ ¡¸<init>¡¹¶Ç´Â ¡¸<clinit>¡¹ÀÇ °æ¿ì
NullPointerException
- name
°¡ null
ÀÎ °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.PUBLIC)
È£ÃâÀÌ ÀÌ ¸Þ¼µå¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Constructor <T > getConstructor(Class ... parameterTypes) throws NoSuchMethodException, SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ ÁöÁ¤µÈ public »ý¼ºÀÚ¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Constructor
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. parameterTypes
ÆÄ¶ó¹ÌÅÍ´Â »ý¼ºÀÚ °¡ÆÄ¶ó¹ÌÅÍÇüÀÌ ¼±¾ðµÈ ¼ø¼·Î ½Äº°ÇÏ´Â Class
°´Ã¼ÀÇ ¹è¿ÀÔ´Ï´Ù.
¸®Ç÷ºÆ®
ÇÏ´Â »ý¼ºÀÚ´Â parameterTypes
·Î
ÁöÁ¤µÈ ÇüÅÂ¿Í ÀÏÄ¡ÇÏ´Â °¡ÆÄ¶ó¹ÌÅÍÇüÀ» °¡Áö´Â ÀÌ Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ public »ý¼ºÀÚ
ÀÔ´Ï´Ù.
parameterTypes
- ÆÄ¶ó¹ÌÅÍ ¹è¿
parameterTypes
¿Í
ÀÏÄ¡ÇÏ´Â public »ý¼ºÀÚ Method
°´Ã¼
NoSuchMethodException
- ÀÏÄ¡ÇÏ´Â ¸Þ¼µå°¡ ¹ß°ßµÇÁö ¾Ê´Â °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.PUBLIC)
È£ÃâÀÌ ÀÌ »ý¼ºÀÚ¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Class [] getDeclaredClasses() throws SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½ºÀÇ ¸â¹ö·Î¼ ¼±¾ðµÈ ¸ðµç Ŭ·¡½º ¹× ÀÎÅÍÆäÀ̽º¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Class
°´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. À̰Ϳ¡´Â Ŭ·¡½º°¡ ¼±¾ðÇÑ public, protected, µðÆúÆ® (package) ¾×¼¼½º ¹× private Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º´Â Æ÷ÇԵ˴ϴٸ¸, »ó¼Ó Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º´Â Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù. ÀÌ ¸Þ¼µå´Â Ŭ·¡½º°¡ ¸â¹ö·Î¼ Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¸¦ ¼±¾ðÇϰí ÀÖÁö ¾ÊÀº °æ¿ì³ª, ÀÌ Class
°´Ã¼°¡ ¿ø½ÃÇü, ¹è¿ Ŭ·¡½º, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì¿¡´Â ±æÀ̰¡ 0
¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
Class
°´Ã¼ÀÇ ¹è¿
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.DECLARED)
È£ÃâÀÌ ÀÌ Å¬·¡½º³»ÀÇ ¼±¾ðµÈ Ŭ·¡½º¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Field [] getDeclaredFields() throws SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿¡ ÀÇÇØ ¼±¾ðµÈ ¸ðµç Çʵ带 ¸®Ç÷ºÆ®
ÇÏ´Â Field
°´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. À̰Ϳ¡´Â public, protected, µðÆúÆ® (package) ¾×¼¼½º ¹× private Çʵå´Â Æ÷ÇԵ˴ϴٸ¸, »ó¼Ó Çʵå´Â Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù. ¸®ÅÏµÈ ¹è¿³»ÀÇ ¿ä¼Ò´Â ¼ÒÆ® µÇ¾î Àְųª, ƯÁ¤ÀÇ ¼ø¼°¡ µÇ¾î Àְųª ÇÒ °ÍÀº ¾ø½À´Ï´Ù. ÀÌ ¸Þ¼µå´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ Çʵ带 ¼±¾ðÇÏÁö ¾Ê´Â °æ¿ì³ª, ÀÌ Class
°´Ã¼°¡ ¿ø½ÃÇü, ¹è¿ Ŭ·¡½º, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì¿¡´Â ±æÀ̰¡ 0
¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
¡¸Java ¾ð¾î »ç¾ç¡¹ÀÇ ¼½¼Ç 8.2 ·Î 8.3À» ÂüÁ¶ÇϽʽÿÀ.
Field
°´Ã¼ÀÇ ¹è¿
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.DECLARED)
È£ÃâÀÌ ÀÌ Å¬·¡½º³»ÀÇ ¼±¾ðµÈ Çʵ忡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Method [] getDeclaredMethods() throws SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º¿¡ ÀÇÇØ ¼±¾ðµÈ ¸ðµç ¸Þ¼µå¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Method
°´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. À̰Ϳ¡´Â public, protected, µðÆúÆ® (package) ¾×¼¼½º ¹× private ¸Þ¼µå´Â Æ÷ÇԵ˴ϴٸ¸, »ó¼Ó ¸Þ¼µå´Â Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù. ¸®ÅÏµÈ ¹è¿³»ÀÇ ¿ä¼Ò´Â ¼ÒÆ® µÇ¾î Àְųª, ƯÁ¤ÀÇ ¼ø¼°¡ µÇ¾î Àְųª ÇÒ °ÍÀº ¾ø½À´Ï´Ù. ÀÌ ¸Þ¼µå´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ ¸Þ¼µå¸¦ ¼±¾ðÇÏÁö ¾Ê´Â °æ¿ì³ª, ÀÌ Class
°´Ã¼°¡ ¿ø½ÃÇü, ¹è¿ Ŭ·¡½º, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì´Â ±æÀ̰¡ 0
¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. Ŭ·¡½º ÃʱâÈ ¸Þ¼µå <clinit>
´Â
¸®ÅÏµÈ ¹è¿¿¡´Â ¾ø½À´Ï´Ù. Ŭ·¡½º°¡ °°Àº ÆÄ¶ó¹ÌÅÍÇüÀ» °¡Áö´Â º¹¼öÀÇ public ¸â¹ö ¸Þ¼µå¸¦ ¼±¾ðÇÏ´Â °æ¿ì, ±×·¯ÇÑ ¸Þ¼µå´Â ¸ðµÎ ¸®ÅÏµÈ ¹è¿¿¡ ÀÖ½À´Ï´Ù.
¡¸Java ¾ð¾î »ç¾ç¡¹ÀÇ ¼½¼Ç 8.2¸¦ ÂüÁ¶ÇϽʽÿÀ.
Method
°´Ã¼ÀÇ ¹è¿
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.DECLARED)
È£ÃâÀÌ ÀÌ Å¬·¡½º³»ÀÇ ¼±¾ðµÈ ¸Þ¼µå¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Constructor [] getDeclaredConstructors() throws SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º¿¡ ÀÇÇØ ¼±¾ðµÈ ¸ðµç »ý¼ºÀÚ¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Constructor
°´Ã¼ÀÇ ¹è¿À» ¸®ÅÏÇÕ´Ï´Ù. À̰͵éÀº public, protected, µðÆúÆ® (package) ¾×¼¼½º ¹× private »ý¼ºÀÚ
ÀÔ´Ï´Ù. ¸®ÅÏµÈ ¹è¿³»ÀÇ ¿ä¼Ò´Â ¼ÒÆ® µÇ¾î Àְųª, ƯÁ¤ÀÇ ¼ø¼°¡ µÇ¾î Àְųª ÇÒ °ÍÀº ¾ø½À´Ï´Ù. Ŭ·¡½º°¡ µðÆúÆ®ÀÇ »ý¼ºÀÚ¸¦ °¡Áö´Â °æ¿ì, ÀÌ »ý¼ºÀÚ´Â ¸®ÅÏµÈ ¹è¿¿¡ ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼µå´Â ÀÌ Class
°´Ã¼°¡ ÀÎÅÍÆäÀ̽º, ¿ø½ÃÇü, ¹è¿ Ŭ·¡½º, ¶Ç´Â void¸¦ ³ªÅ¸³»´Â °æ¿ì¿¡´Â ±æÀ̰¡ 0
¹è¿À» ¸®ÅÏÇÕ´Ï´Ù.
¡¸Java ¾ð¾î »ç¾ç¡¹ÀÇ ¼½¼Ç 8.2¸¦ ÂüÁ¶ÇϽʽÿÀ.
Method
°´Ã¼ÀÇ ¹è¿
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.DECLARED)
È£ÃâÀÌ ÀÌ Å¬·¡½º³»ÀÇ ¼±¾ðµÈ »ý¼ºÀÚ¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Field getDeclaredField(String name) throws NoSuchFieldException, SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ ¼±¾ð Çʵ带 ¸®Ç÷ºÆ®
ÇÏ´Â Field
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. name
ÆÄ¶ó¹ÌÅÍ´Â ¿ä±¸µÈ ÇʵåÀÇ ´Ü¼ø¸íÀ» ÁöÁ¤ÇÏ´Â String
ÀÔ´Ï´Ù. ÀÌ ¸Þ¼µå°¡ ¹è¿ Ŭ·¡½ºÀÇ length
Çʵ带 ¸®Ç÷ºÆ®
ÇÒ °ÍÀº ¾ø½À´Ï´Ù.
name
- ÇʵåÀÇ À̸§
Field
°´Ã¼
NoSuchFieldException
- ÁöÁ¤µÈ À̸§ÀÇ Çʵ尡 ¹ß°ßµÇÁö ¾Ê´Â °æ¿ì
NullPointerException
- name
°¡ null
ÀÎ °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.DECLARED)
È£ÃâÀÌ ¼±¾ðµÈ Çʵ忡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Method getDeclaredMethod(String name, Class ... parameterTypes) throws NoSuchMethodException, SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ ¼±¾ð ¸Þ¼µå¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Method
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. name
ÆÄ¶ó¹ÌÅÍ´Â ¿ä±¸µÈ ¸Þ¼µåÀÇ ´Ü¼ø¸íÀ» ÁöÁ¤ÇÏ´Â String
ÀÔ´Ï´Ù. parameterTypes
ÆÄ¶ó¹ÌÅÍ´Â ¸Þ¼µåÀÇ °¡ÆÄ¶ó¹ÌÅÍÇüÀ» ¼±¾ð¼ø¼¿¡ ½Äº°ÇÏ´Â Class
°´Ã¼ÀÇ ¹è¿ÀÔ´Ï´Ù. °°Àº ÆÄ¶ó¹ÌÅÍÇüÀ» °¡Áö´Â º¹¼öÀÇ ¸Þ¼µå°¡ 1°³ÀÇ Å¬·¡½º¿¡¼ ¼±¾ðµÇ¾î ±×·¯ÇÑ ¸Þ¼µåÀÇ 1°³°¡ ±× ÀÌ¿ÜÀÇ ¾î¶² °Íº¸´Ù ¸íÈ®ÇÑ ¹Ýȯ°ªÀÇ ÇüŸ¦ °¡Áö´Â °æ¿ì¿¡´Â ±× ¸Þ¼µå°¡ ¸®Åϵ˴ϴÙ
. ±×·¸Áö ¾ÊÀº °æ¿ì, ¸Þ¼µåÀÇ 1°³°¡ ÀÓÀÇ¿¡ ¼±Åõ˴ϴÙ. À̸§ÀÌ ¡¸<init>¡¹¶Ç´Â ¡¸<clinit>¡¹ÀÇ °æ¿ì´Â NoSuchMethodException
°¡ ¹ß»ý µË´Ï´Ù.
name
- ¸Þ¼µåÀÇ À̸§parameterTypes
- ÆÄ¶ó¹ÌÅÍ ¹è¿
Method
°´Ã¼
NoSuchMethodException
- ÀÏÄ¡ÇÏ´Â ¸Þ¼µå°¡ ¹ß°ßµÇÁö ¾Ê´Â °æ¿ì
NullPointerException
- name
°¡ null
ÀÎ °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.DECLARED)
È£ÃâÀÌ ¼±¾ðµÈ ¸Þ¼µå¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public Constructor <T > getDeclaredConstructor(Class ... parameterTypes) throws NoSuchMethodException, SecurityException
Class
°´Ã¼°¡ ³ªÅ¸³»´Â Ŭ·¡½º ¶Ç´Â ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤µÈ »ý¼ºÀÚ¸¦ ¸®Ç÷ºÆ®
ÇÏ´Â Constructor
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù. parameterTypes
ÆÄ¶ó¹ÌÅÍ´Â »ý¼ºÀÚ °¡ÆÄ¶ó¹ÌÅÍÇüÀ» ¼±¾ð¼ø¼¿¡ ½Äº°ÇÏ´Â Class
°´Ã¼ÀÇ ¹è¿ÀÔ´Ï´Ù.
parameterTypes
- ÆÄ¶ó¹ÌÅÍ ¹è¿
Method
°´Ã¼
NoSuchMethodException
- ÀÏÄ¡ÇÏ´Â ¸Þ¼µå°¡ ¹ß°ßµÇÁö ¾Ê´Â °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú s°¡ Á¸ÀçÇØ, ¾Æ·¡ÀÇ Á¶°ÇÀÇ ¾î¶² °ÍÀΰ¡°¡ ä¿öÁö´Â °æ¿ì
s.checkMemberAccess(this, Member.DECLARED)
È£ÃâÀÌ ¼±¾ðµÈ »ý¼ºÀÚ¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
s.checkPackageAccess()
È£ÃâÀÌ ÀÌ Å¬·¡½ºÀÇ ÆÐŰÁö¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾Ê´Â´Ù
public InputStream getResourceAsStream(String name)
ClassLoader.getSystemResourceAsStream(java.lang.String)
¿¡ À§¾ç µË´Ï´Ù.
À§¾çÀÇ Àü¿¡ ÀÌ ¾Ë°í¸®ÁòÀ» »ç¿ëÇØ ÁöÁ¤µÈ ÀÚ¿ø¸íÀ¸·ÎºÎÅÍ Àý´ë ÀÚ¿ø¸íÀÌ ±¸ÃàµË´Ï´Ù.
modified_package_name/name
¿©±â¼, modified_package_name´Â ¡¸. ¡¹( ¡¸\u002e ¡¹)À» ¡¸/¡¹¿¡ ¿Å°Ü³õÀº ÀÌ °´Ã¼ÀÇ ÆÐŰÁö¸íÀÌ µÈ´Ù
name
- ¿ä±¸µÇ´Â ÀÚ¿øÀÇ À̸§
InputStream
°´Ã¼, ÀÌ À̸§ÀÇ ÀÚ¿øÀÌ ¹ß°ßµÇÁö ¾Ê¾Ò´ø °æ¿ì´Â null
NullPointerException
- name°¡ nullpublic URL getResource(String name)
ClassLoader.getSystemResource(java.lang.String)
¿¡ À§¾ç µË´Ï´Ù.
À§¾çÀÇ Àü¿¡ ÀÌ ¾Ë°í¸®ÁòÀ» »ç¿ëÇØ ÁöÁ¤µÈ ÀÚ¿ø¸íÀ¸·ÎºÎÅÍ Àý´ë ÀÚ¿ø¸íÀÌ ±¸ÃàµË´Ï´Ù.
modified_package_name/name
¿©±â¼, modified_package_name´Â ¡¸. ¡¹( ¡¸\u002e ¡¹)À» ¡¸/¡¹¿¡ ¿Å°Ü³õÀº ÀÌ °´Ã¼ÀÇ ÆÐŰÁö¸íÀÌ µÈ´Ù
name
- ¿ä±¸µÇ´Â ÀÚ¿øÀÇ À̸§
URL
°´Ã¼, ÀÌ À̸§ÀÇ ÀÚ¿øÀÌ ¹ß°ßµÇÁö ¾Ê¾Ò´ø °æ¿ì´Â nullpublic ProtectionDomain getProtectionDomain()
ProtectionDomain
À»
¸®ÅÏÇÕ´Ï´Ù. ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ ÀνºÅç µÇ°í ÀÖÀ¸¸é, ÀÌ ¸Þ¼µå´Â ¿ì¼± ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkPermission
¸Þ¼µå¸¦ RuntimePermission("getProtectionDomain")
Á¢±Ù ±ÇÇÑÀ» »ç¿ëÇØ È£ÃâÇÏ´Â °Í¿¡ ÀÇÇØ ProtectionDomain
À»
¹®Á¦ ¾ø°Ô ÃëµæÇÒ ¼ö ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù.
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ±× checkPermission
¸Þ¼µå°¡ ProtectionDomain
ÃëµæÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìProtectionDomain
,
SecurityManager.checkPermission(java.security.Permission)
,
RuntimePermission
public boolean desiredAssertionStatus()
À̰ÍÀº JRE ÀÚü·Î »ç¿ëÇϱâ À§ÇÑ ¸Þ¼µåÀ̱⠶§¹®¿¡ ÇÁ·Î±×·¡¸Ó°¡ ÀÌ ¸Þ¼µå¸¦ ÇÊ¿ä·Î ÇÏ´Â °ÍÀº °ÅÀÇ ¾ø½À´Ï´Ù (ÀÌ ¸Þ¼µå¿¡ÀÇÇØ ÃʱâȽÿ¡ ¼±¾ðÀÌ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Ŭ·¡½º¸¦ ÆÇº°ÇÒ ¼ö ÀÖ´Ù). ÁöÁ¤µÈ Ŭ·¡½ºÀÇ ÃʱâȽÿ¡ ÀÌ ¸Þ¼µå°¡ Ŭ·¡½º¿¡ °ü·ÃµÈ ½ÇÁ¦ÀÇ ¼±¾ð ½ºÅ×ÀÌÅͽº¸¦ µ¹·ÁÁشٰí´Â ÇÒ ¼ö ¾ø´Â °Í¿¡ À¯ÀÇÇØ ÁÖ¼¼¿ä.
ClassLoader.setClassAssertionStatus(java.lang.String, boolean)
,
ClassLoader.setPackageAssertionStatus(java.lang.String, boolean)
,
ClassLoader.setDefaultAssertionStatus(boolean)
public boolean isEnum()
public T [] getEnumConstants()
public T cast(Object obj)
obj
- ij½ºÆ® µÇ´Â °´Ã¼
ClassCastException
- ÁöÁ¤µÈ °´Ã¼°¡ null À̿ܿ©, ÇüÅ T¿¡ ÇÒ´çÇÒ ¼ö ¾ø´Â °æ¿ìpublic <U> Class <? extends U> asSubclass(Class <U> clazz)
ÀÌ ¸Þ¼µå´Â ¹Þ´Â ÃøÀÇ Class °´Ã¼¸¦ Á¦ÇÑÇÏ´Â API¿¡ °Ç³×ÁÖ±â À§Çؼ Ŭ¶óÀÌ¾ðÆ®°¡ Class °´Ã¼ÀÇ ÇüŸ¦ ³×·Î¿ì º¯È¯ÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì¿¡ µµ¿òÀÌ µË´Ï´Ù. (¹ü¿ëÇüÀº ÀÌ·¹ÀÌÀð¿¡ ÀÇÇØ ±¸ÇöµÇ¹Ç·Î) ij½ºÆ®ÀÇ Á¤È®¼ºÀ» ½ÇÇà½Ã¿¡ È®ÀÎÇÒ ¼ö ¾ø±â ¶§¹®¿¡ ij½ºÆ®¿¡ ÀÇÇØ ÄÄÆÄÀϽÃÀÇ °æ°í°¡ »ý¼ºµË´Ï´Ù.
ClassCastException
- ÀÌ Class °´Ã¼°¡ ÁöÁ¤µÈ Ŭ·¡½ºÀÇ ¼ºê Ŭ·¡½º¸¦ ³ªÅ¸³»Áö ¾Ê´Â °æ¿ì ( ¡¸¼ºê Ŭ·¡½º¡¹´Â Ŭ·¡½º ÀÚü¸¦ Æ÷ÇÔÇÑ´Ù)public <A extends Annotation > A getAnnotation(Class <A> annotationClass)
AnnotatedElement
³»ÀÇ getAnnotation
annotationClass
- ¾î³ëÅ×À̼ǿ¡ ´ëÀÀÇÏ´Â Class °´Ã¼
public boolean isAnnotationPresent(Class <? extends Annotation > annotationClass)
AnnotatedElement
³»ÀÇ isAnnotationPresent
annotationClass
- ¾î³ëÅ×À̼ǿ¡ ´ëÀÀÇÏ´Â Class °´Ã¼
public Annotation [] getAnnotations()
AnnotatedElement
³»ÀÇ getAnnotations
public Annotation [] getDeclaredAnnotations()
AnnotatedElement
³»ÀÇ getDeclaredAnnotations
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | »ý¼ºÀÚ | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.