ÉîÈë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
Ïà¹ØÎĵµ£º
package Demo;
// ÆÕͨ·ºÐÍ
class Point<T> { // ´Ë´¦¿ÉÒÔËæ±ãд±êʶ·ûºÅ£¬TÊÇtypeµÄ¼ò³Æ
private T var; // varµÄÀàÐÍÓÉTÖ¸¶¨£¬¼´£ºÓÉÍⲿָ¶¨
public T getVar() { // ·µ»ØÖµµÄÀàÐÍÓÉÍⲿ¾ö¶¨
return var;
}
public void setVar(T var) { // ÉèÖõÄÀàÐÍÒ²ÓÉÍⲿ¾ö¶¨
this.var = var;
}
}
publi ......
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·ºÐÍ·½·¨
class Demo26 {
public <T> T fun(T t) { // ¿ÉÒÔ½ÓÊÕÈÎÒâÀàÐ͵ÄÊý¾Ý
return t; // Ö±½Ó°Ñ²ÎÊý·µ»Ø
}
}
public class GenericsDemo26 {
public static void main(String args[]) {
Demo26 d = new Demo26(); // ʵÀý»¯Demo¶ÔÏó
String str = d.fun("it"); // ´«µÝ× ......
µ¼ÈëÅäÖÃjar°ü substance.jar
È»ºóÔÚframeµÄÖ÷º¯Êý ¼ÓÈëÈçÏ´úÂë
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);
try {
UIManager.setLookAndFeel(new org.jvnet.substance.skin.SubstanceModerateLookAndFeel()) ; ......