ÉîÈëjava·´Éä
·´ÉäµÄ»ùʯ——ClassÀà
Java³ÌÐòÖеĸ÷¸öJavaÀàÊôÓÚͬһÀàÊÂÎÃèÊöÕâÀàÊÂÎïµÄJavaÀàÃû¾ÍÊÇClass¡£±ÈÈ磺ÖÚ¶àµÄÈË¿ÉÒÔÓÃÒ»¸öPersonÀàÀ´±íʾ£¬¶øÕâ¸öÀà¾Í¿ÉÒÔÃèÊöÈ˵ÄÐÅÏ¢(ÐÕÃû¡¢ÄêÁä¡¢ÐÔ±ðµÈµÈ)£¬¶øÖÚ¶àµÄJavaÀà¾Í¿ÉÒÔÓÃClassÀ´±íʾ¡£
Question£ºPersonÀà´ú±íÈË£¬ËüµÄʵÀý¶ÔÏó¿ÉÒÔÊÇÕÅÈý¡¢ÀîËÄ£¬ClassÀà´ú±íJavaÀ࣬ËüµÄ¸÷¸öʵÀý¶ÔÏóÓзֱð´ú±íʲôÄØ£¿
Answer: ¶ÔÓ¦¸÷¸öÀàÔÚÄÚ´æÖеÄ×Ö½ÚÂë¡£Ò»¸öÀà±»Àà¼ÓÔØÆ÷¼ÓÔص½ÄÚ´æÖУ¬Õ¼ÓÃÒ»·Ý´æ´¢¿Õ¼ä£¬Õâ¸ö¿Õ¼äÀïÃæµÄÄÚÈݾÍÊÇÀàµÄ×Ö½ÚÂ룬²»Í¬µÄÀàµÄ×Ö½ÚÂëÊDz»Í¬µÄ£¬ËùÒÔËüÃÇÔÚÄÚ´æÖеÄÄÚÈÝÊDz»Í¬µÄ£¬ÕâÒ»¸ö¸ö¿Õ¼ä¿É·Ö±ðÓÃÒ»¸ö¸öµÄ¶ÔÏóÀ´±íʾ£¬ÕâЩ¶ÔÏóÏÔÈ»¾ßÓÐÏàͬµÄÀàÐÍ£¬¼´ClassÀàÐÍ¡£
ÈçºÎµÃµ½¸÷¸ö×Ö½ÚÂë¶ÔÓ¦µÄʵÀý¶ÔÏó,ÓÐÈýÖÖ·½·¨£º
1¡¢ÀàÃû.class,ÀýÈç:System.class
2¡¢¶ÔÏó.getClass(),ÀýÈç:new Data().getClass()
3¡¢Class.forName("ÀàÃû"),ÀýÈç:Class.forName("java.util.Date")
ClassÀàµÄÊôÐԺͷ½·¨Çë²Î¼ûjdk
·´Éä
·´Éä¾ÍÊÇ°ÑJavaÀàÖеĸ÷ÖֳɷÖÓ³Éä³ÉÏàÓ¦µÄjavaÀà¡£ÀýÈ磺һ¸öJavaÀàÖÐÓÃÒ»¸öClassÀàµÄ¶ÔÏóÀ´±íʾ£¬Ò»¸öÀàÖеÄ×é³É²¿·Ö£º³ÉÔ±±äÁ¿£¬·½·¨£¬¹¹Ôì·½·¨£¬°üµÈµÈÐÅÏ¢Ò²ÓÃÒ»¸ö¸öµÄJavaÀàÀ´±íʾ¡£±íʾjavaÀàµÄClassÀàÏÔȻҪÌṩһϵÁеķ½·¨À´»ñµÃÆäÖеıäÁ¿£¬·½·¨£¬¹¹Ôì·½·¨£¬ÐÞÊηû£¬°üµÈÐÅÏ¢£¬ÕâЩÐÅÏ¢¾ÍÊÇÓÃÏàÓ¦ÀàµÄʵÀý¶ÔÏóÀ´±íʾ£¬ËüÃÇÊÇField¡¢Method¡¢Contructor¡¢PackageµÈµÈ¡£
ContructorÀà
1¡¢µÃµ½Ä³¸öÀàµÄËùÓй¹Ôì·½·¨£º
Contructor[] contructors = lass.forName("ˈ̞").getContructors();
2¡¢µÃµ½Ä³¸öÌض¨µÄ¹¹Ôì·½·¨£º
//»ñµÃ·½·¨Ê±ÒªÓõ½ÀàÐÍ
Contructor contructors = Class.forName("ÀàÃû").getContructor(²ÎÊýÀàÐÍ.class,...);
3¡¢´´½¨ÊµÀý¶ÔÏó
ͨ³£·½Ê½:String str = new String(new StringBuffer("abc"));
//µ÷ÓûñµÃµÄ·½·¨Ê±ÒªÓõ½ÉÏÃæÏàͬÀàÐ͵ÄʵÀý
·´É䷽ʽ:String str = (String)contructor.newInstance(new StringBuffer("abc"));
4¡¢Class.forName();
·Ê¾Àý:String obj = (String)Class.forName("java.lang.Str
Ïà¹ØÎĵµ£º
Javaѧϰ´ÓÈëÃŵ½¾«Í¨
Ò»¡¢ JDK (Java Development Kit)
JDKÊÇÕû¸öJavaµÄºËÐÄ£¬°üÀ¨ÁËJavaÔËÐл·¾³£¨Java Runtime Envirnment£©£¬Ò»¶ÑJava¹¤¾ßºÍJava»ù´¡µÄÀà¿â(rt.jar)¡£²»ÂÛʲôJavaÓ¦Ó÷þÎñÆ÷ʵÖʶ¼ÊÇÄÚÖÃÁËij¸ö°æ±¾µÄJDK¡£Òò´ËÕÆÎÕJDKÊÇѧºÃJavaµÄµÚÒ»²½¡£×îÖ÷Á÷µÄJ ......
package Demo;
// ÊÜÏÞ·ºÐÍ
class Info17<T> {
private T var; // ¶¨Òå·ºÐͱäÁ¿
public void setVar(T var) {
this.var = var;
}
public T getVar() {
return this.var;
}
public String toString() { // Ö±½Ó´òÓ¡
return this.var.toString();
}
}
public class GenericsDemo17 {
publ ......
package Demo;
// Java·ºÐͽӿÚ
interface Info24<T> { // ÔÚ½Ó¿ÚÉ϶¨Òå·ºÐÍ
public T getVar(); // ¶¨Òå³éÏó·½·¨£¬³éÏó·½·¨µÄ·µ»ØÖµ¾ÍÊÇ·ºÐÍÀàÐÍ
}
class InfoImp24<T> implements Info24<T> { // ¶¨Òå·ºÐͽӿڵÄ×ÓÀà
private T var; // ¶¨ÒåÊôÐÔ
public InfoImp24(T var) { // ͨ¹ý¹¹Ôì·½·¨É ......
µ¼ÈëÅäÖÃjar°ü substance.jar
È»ºóÔÚframeµÄÖ÷º¯Êý ¼ÓÈëÈçÏ´úÂë
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);
try {
UIManager.setLookAndFeel(new org.jvnet.substance.skin.SubstanceModerateLookAndFeel()) ; ......