Java类的实例化


1、用new语句创建对象,这是最常见的创建对象的方法。


2、通过工厂方法返回对象,如:String str = String.valueOf(23);


3、运用反射手段,调用java.lang.Class或者java.lang.reflect.Constructor类的newInstance()实例方法。如:Object obj = Class.forName("java.lang.Object").newInstance();


4、调用对象的clone()方法。


5、通过I/O流(包括反序列化),如运用反序列化手段,调用java.io.ObjectInputStream对象的 readObject()方法。




 

public 
 static 
 void 
 main(String[] 
 args 
 ){
 
           
 try 
 {
 
              Class<?> 
 class1 
 = Class.forName( 
 "com.mw.mbox.boss.customer.action.Demo" 
 );
 
              Method 
 method 
 = 
 class1 
 .getMethod( 
 "say" 
 + 
 "Monkey" 
 ,String. 
 class 
 ,String. 
 class 
 );
 
//            Method method = class1.getMethod("say", new Class[]                                    {String.class,String.class});
 
               
 method 
 .invoke( 
 class1 
 .newInstance(), 
 "夏侯惇夏侯惇夏侯惇完夏侯惇!!" 
 , 
 "" 
 );
 
          } 
 catch 
 (Exception 
 e 
 ) {
 
               
 e 
 .printStackTrace();
 
          }
 
     }
 
 

 
 
     public 
  static 
  void 
  main(String[] 
  args 
  ){
 
 
           
  try 
  {
 
 
              Class<?> 
  class1 
  = Class.forName( 
  "com.mw.mbox.boss.customer.action.Demo" 
  );
 
 
              Method 
  method 
  = 
  class1 
  .getMethod( 
  "say" 
  + 
  "Monkey" 
  , 
  new   
  Class[]{String. 
  class 
  , 
  int 
  . 
  class 
  });
 
 
              Object 
  obj 
  [] = 
  new 
  Object[]{ 
  "猴子蹲猴子蹲猴子蹲完狮子蹲!!" 
  ,2};
 
 
               
  method 
  .invoke( 
  class1 
  .newInstance(), 
  obj 
  );
 
 
          } 
  catch 
  (Exception 
  e 
  ) {
 
 
               
  e 
  .printStackTrace();
 
 
          }
 
 
     }