锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲日韩AV一区二区三区中文,亚洲日本韩国在线,亚洲国产区男人本色http://www.tkk7.com/freefly/category/18857.html涓闂ㄦ妧鏈紝濡傛灉涓嶈兘璁插嚭鏉ワ紝閭d箞灝辨槸娌℃湁鐞嗚В錛屽鏋滀笉鑳藉緢濂界殑璁插嚭鏉?閭d箞灝辨槸鐞嗚В涓嶅閫忓交錛?/description>zh-cnThu, 22 May 2008 21:53:10 GMTThu, 22 May 2008 21:53:10 GMT60浣跨敤javamail鍙戜俊榪囩▼涓殑涓浜涢棶棰樺強瑙e喅鏂規硶http://www.tkk7.com/freefly/articles/202293.htmlfreeflyfreeflyThu, 22 May 2008 17:28:00 GMThttp://www.tkk7.com/freefly/articles/202293.htmlhttp://www.tkk7.com/freefly/comments/202293.htmlhttp://www.tkk7.com/freefly/articles/202293.html#Feedback0http://www.tkk7.com/freefly/comments/commentRss/202293.htmlhttp://www.tkk7.com/freefly/services/trackbacks/202293.html鏂囩珷鏉ユ簮浜?http://www.tkk7.com/TrampEagle/archive/2006/05/26/48326.html

浠婂ぉ鍦ㄧ爺絀秊avamail鍙戜俊鐨勮繃紼嬩腑錛屽嚭鐜頒簡涓浜涘皬闂錛岀幇鎬葷粨濡備笅錛屼互鍏嶅悗鏉ヨ呰蛋浜涗笉蹇呰鐨勫集璺紝鍏堟妸瀹屾暣鐨勮兘澶熸甯歌繍琛岀殑浠g爜紺轟緥綺樿創濡備笅錛?br /> 鍙戦偖浠舵簮浠g爜錛?br /> package com.hyq.test;

import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;

public class MailExample {

  public static void main (String args[]) throws Exception {
   
    String host = "smtp.163.com";   //鍙戜歡浜轟嬌鐢ㄥ彂閭歡鐨勭數瀛愪俊綆辨湇鍔″櫒
    String from = "浣犺嚜宸辯殑鐢靛瓙淇$";    //鍙戦偖浠剁殑鍑哄彂鍦幫紙鍙戜歡浜虹殑淇$錛?br />     String to = "鏀朵歡浜轟俊綆?;   //鍙戦偖浠剁殑鐩殑鍦幫紙鏀朵歡浜轟俊綆憋級

    // Get system properties
    Properties props = System.getProperties();

    // Setup mail server
    props.put("mail.smtp.host", host);

    // Get session
    props.put("mail.smtp.auth", "true"); //榪欐牱鎵嶈兘閫氳繃楠岃瘉

    MyAuthenticator myauth = new MyAuthenticator("浣犺嚜宸辯殑鐢靛瓙淇$", "浣犺嚜宸辯殑淇$瀵嗙爜");
    Session session = Session.getDefaultInstance(props, myauth);

//    session.setDebug(true);

    // Define message
    MimeMessage message = new MimeMessage(session);
   

    // Set the from address
    message.setFrom(new InternetAddress(from));

    // Set the to address
    message.addRecipient(Message.RecipientType.TO,
      new InternetAddress(to));

    // Set the subject
    message.setSubject("嫻嬭瘯紼嬪簭錛?);

    // Set the content
    message.setText("榪欐槸鐢╦ava鍐欑殑鍙戦佺數瀛愰偖浠剁殑嫻嬭瘯紼嬪簭錛?);

    message.saveChanges();

      Transport.send(message);
    
  }
}

鏍¢獙鍙戜俊浜烘潈闄愮殑鏂規硶
package com.hyq.test;

import javax.mail.PasswordAuthentication;

class MyAuthenticator
      extends javax.mail.Authenticator {
    private String strUser;
    private String strPwd;
    public MyAuthenticator(String user, String password) {
      this.strUser = user;
      this.strPwd = password;
    }

    protected PasswordAuthentication getPasswordAuthentication() {
      return new PasswordAuthentication(strUser, strPwd);
    }
  }


娉ㄦ剰錛氫笂闈㈢殑浜嬩緥浠呬負浣跨敤163淇$鏃跺彂閫佺數瀛愰偖浠剁殑鏂規硶錛屽洜涓轟嬌鐢ㄧ殑host涓猴細smtp.163.com錛屽婧愪唬鐮佷腑錛歋tring host = "smtp.163.com";   //鍙戜歡浜轟嬌鐢ㄥ彂閭歡鐨勭數瀛愪俊綆辨湇鍔″櫒錛屽鏋滀嬌鐢ㄥ叾瀹冪殑鐢靛瓙閭歡鍙戦侊紝灝卞繀欏誨湪鍏墮偖浠舵湇鍔″櫒涓婃煡鎵劇浉搴旂殑鐢靛瓙閭歡鏈嶅姟鍣紝渚嬪鎼滅嫄灝辮浣跨敤smtp.sohu.com錛屽叿浣撴儏鍐靛叿浣撳寰咃紝閮藉彲浠ヤ粠鎵浣跨敤鐨勯偖浠舵湇鍔″櫒涓婅幏寰楃殑銆傚鏋滄病鏈変嬌鐢╤ost 錛屼篃灝辨槸璇達紝娌℃湁榪涜props.put("mail.smtp.host", host);璁劇疆錛岄偅涔堝氨浼氭姏javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25;鐨勫紓甯搞傚綋鐒朵簡錛屽鏋滀綘娌℃湁姝g‘閰嶇疆錛岃繖涓紓甯鎬粛鐒朵細琚姏鍑虹殑銆?br />
鏈変簺閭歡鏈嶅姟緋葷粺鏄笉闇瑕侀獙璇佸彂浠朵漢鐨勬巿鏉冪殑錛屾墍浠ュ彲浠ュ緢綆鍗曠殑浣跨敤
    Session session = Session.getDefaultInstance(props, null);
             鑰屼笉蹇呬嬌鐢?br />     props.put("mail.smtp.auth", "true"); 
    MyAuthenticator myauth = new MyAuthenticator("浣犺嚜宸辯殑鐢靛瓙淇$", "浣犺嚜宸辯殑淇$瀵嗙爜");
    Session session = Session.getDefaultInstance(props, myauth);

灝卞彲浠ュ彂閫佺數瀛愰偖浠朵簡錛岃繖涓涓轟竴浜涗紒浜嬩笟鍗曚綅鐨勫唴閮ㄧ數瀛愪俊綆辯郴緇熴?br /> 浣嗘槸瀵逛簬寰堝闂ㄦ埛緗戠珯涓婄殑鐢甸偖緋葷粺錛屽:163,sohu,yahoo絳夌瓑錛屽鏋滀粛鐒剁畝鍗曠殑榪欐牱浣跨敤灝變細鎶?br />
com.sun.mail.smtp.SMTPSendFailedException: 553 authentication is required,smtp8,wKjADxuAyCAfmnZE8BwtIA==.32705S2


 at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)

 at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959)

 at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583)

 at javax.mail.Transport.send0(Transport.java:169)

 at javax.mail.Transport.send(Transport.java:98)

榪欐牱鐨勫紓甯革紝瑕佹眰浣犲繀欏昏繘琛屾巿鏉冩牎楠岋紝瀹冪殑鐩殑灝辨槸闃繪浠栦漢浠繪剰涔卞彂閭歡錛屼篃綆楁槸涓轟簡鍑忓皯鍨冨溇閭歡鐨勫嚭鐜板惂銆傝繖鏃跺欙紝鎴戜滑灝辮浣跨敤
    props.put("mail.smtp.auth", "true"); 
    MyAuthenticator myauth = new MyAuthenticator("浣犺嚜宸辯殑鐢靛瓙淇$", "浣犺嚜宸辯殑淇$瀵嗙爜");
    Session session = Session.getDefaultInstance(props, myauth);

榪欓噷榪樻湁涓涓壒鍒敞鎰忕殑浜嬫儏錛氬湪浣犱嬌鐢⊿ession.getDefaultInstance鏃訛紝涓瀹氳灝?nbsp;   props.put("mail.smtp.auth", "true"); 緗負true,瀹冮粯璁ょ殑鏄痜alse,濡傛灉浣犳病鏈夊仛榪欎竴姝ワ紝铏界劧浣犱嬌鐢ㄤ簡Session.getDefaultInstance(props, myauth);錛屼綘鑷繁涔熺‘瀹?nbsp;   MyAuthenticator myauth = new MyAuthenticator("浣犺嚜宸辯殑鐢靛瓙淇$", "浣犺嚜宸辯殑淇$瀵嗙爜");浣嗘槸瀹冧粛鐒朵細鎶涘嚭
com.sun.mail.smtp.SMTPSendFailedException: 553 authentication is required,smtp8,wKjADxJA2SBrm3ZEFv0gIA==.40815S2


 at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)

 at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959)

 at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583)

 at javax.mail.Transport.send0(Transport.java:169)

 at javax.mail.Transport.send(Transport.java:98)
榪欐牱鐨勫紓甯搞傛垜灝卞湪榪欎竴姝ヨ垂浜嗗ソ闀挎椂闂達紝鍚庢潵鎵嶅彂鐜頒簡榪欎釜闂錛屽緢鏄儊闂楓備笉榪囪繕濂斤紝鎬葷畻瑙e喅浜嗐?br />
鍏跺疄涓婇潰鐨勫仛娉曞彧鏄瘮杈冪畝鍗曠殑涓縐嶏紝涔熸湁寰堝鍏跺畠鐨勫啓娉曪紝濡傦細
Properties props = System.getProperties();鍙互浣跨敤
Properties props = new Properties();鏉ヤ唬鏇褲?br />

Transport.send(message);鍙互浣跨敤涓嬮潰鐨勪唬鐮佹潵浠f浛
      String username = "浣犵殑鐢靛瓙淇$鐢ㄦ埛鍚?;
      String password = "浣犵殑鐢靛瓙淇$瀵嗙爜";
      message.saveChanges(); //    implicit with send()
      Transport transport = session.getTransport("smtp");
      transport.connect("mail.htf.com.cn", username, password);
      transport.sendMessage(message, message.getAllRecipients());
      transport.close();
榪欑鏂規硶鍦ㄥ悓鏃跺彂閫佸灝佺數瀛愰偖浠舵椂姣旇緝鏈夌敤銆?br />
榪樻湁涓浜涘叿浣撶殑鐩稿叧姒傚康錛屽彲浠ユ煡鐪嬬浉鍏崇殑瀹樻柟鏂囨。錛屽湪鎴戞煡璇㈣祫鏂欐椂錛屽彂鐜頒簡涓綃囨枃绔犲啓寰楃浉褰撲粩緇嗭紝鍙互鍔犱互鍙傝冿細http://www.matrix.org.cn/resource/article/44/44101_JavaMail.html

鍙﹂檮涓婁嬌鐢╫rg.apache.commons.mail榪涜鍙戠數瀛愰偖浠剁殑紺轟緥錛?br /> import org.apache.commons.mail.SimpleEmail;
import org.apache.commons.mail.*;

public class TestCommon {
  public TestCommon() {
  }
  public static void main(String[] args){
    SimpleEmail email = new SimpleEmail();
    email.setHostName("smtp.163.com");//璁劇疆浣跨敤鍙戠數瀛愰偖浠剁殑閭歡鏈嶅姟鍣?br />     try {
      email.addTo("鏀朵歡浜轟俊綆?/a>");
      email.setAuthentication("
鍙戜歡浜轟俊綆?,"鍙戜歡浜轟俊綆卞瘑鐮?/a>");
      email.setFrom("
鍙戜歡浜轟俊綆?/a>");
      email.setSubject("Test apache.commons.mail message");
      email.setMsg("This is a simple test of commons-email");
      email.send();
    }
    catch (EmailException ex) {
      ex.printStackTrace();
    }
  }
}



freefly 2008-05-23 01:28 鍙戣〃璇勮
]]>
java鍙嶅皠鏈哄埗鐨勭畝鍗曚緥瀛?/title><link>http://www.tkk7.com/freefly/articles/161971.html</link><dc:creator>freefly</dc:creator><author>freefly</author><pubDate>Tue, 20 Nov 2007 15:28:00 GMT</pubDate><guid>http://www.tkk7.com/freefly/articles/161971.html</guid><wfw:comment>http://www.tkk7.com/freefly/comments/161971.html</wfw:comment><comments>http://www.tkk7.com/freefly/articles/161971.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/freefly/comments/commentRss/161971.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/freefly/services/trackbacks/161971.html</trackback:ping><description><![CDATA[Java 鐨勫弽灝勬満鍒舵槸浣垮叾鍏鋒湁鍔ㄦ佺壒鎬х殑闈炲父鍏抽敭鐨勪竴縐嶆満鍒訛紝涔熸槸鍦↗avaBean 涓箍娉涘簲鐢ㄧ殑涓縐嶇壒鎬с?<br /> 榪愮敤JavaBean 鐨勬渶甯歌鐨勯棶棰樻槸錛氭牴鎹寚瀹氱殑綾誨悕錛岀被瀛楁鍚嶅拰鎵瀵瑰簲鐨勬暟鎹紝寰楀埌璇ョ被鐨勫疄渚嬶紝涓嬮潰鐨勪竴涓緥瀛愭紨紺轟簡榪欎竴瀹炵幇銆?<br /> -|Base.java //鎶借薄鍩虹被 <br /> |Son1.java //鍩虹被鎵╁睍1 <br /> |Son2.java //鍩虹被鎵╁睍2 <br /> |Util.java <br /> /** <br /> * @author metaphy <br /> * create 2005-4-14 9:06:56 <br /> * 璇存槑錛?<br /> */ <br /> 錛?錛塀ase.java 鎶借薄鍩虹被鍙槸涓涓畾涔?<br /> public abstract class Base { <br /> } <br /> 錛?錛塖on1.java /Son2.java 鏄凡緇忓疄鐜扮殑JavaBean <br /> public class Son1 extends Base{ <br /> private int id ; <br /> private String name ; <br /> <br /> public int getId() { <br /> return id; <br /> } <br /> public void setId(int id) { <br /> this.id = id; <br /> } <br /> public String getName() { <br /> return name; <br /> } <br /> public void setName(String name) { <br /> this.name = name; <br /> } <br /> <br /> public void son1Method(String s){ <br /> System.out.println(s) ; <br /> } <br /> } <br /> 錛?錛?<br /> public class Son2 extends Base{ <br /> private int id; <br /> private double salary; <br /> <br /> public int getId() { <br /> return id; <br /> } <br /> public void setId(int id) { <br /> this.id = id; <br /> } <br /> public double getSalary() { <br /> return salary; <br /> } <br /> public void setSalary(double salary) { <br /> this.salary = salary; <br /> } <br /> } <br /> 錛?錛塙til.java 婕旂ず浜嗗浣曟牴鎹寚瀹氱殑綾誨悕錛岀被瀛楁鍚嶅拰鎵瀵瑰簲鐨勬暟鎹紝寰楀埌涓涓被鐨勫疄渚?<br /> import java.lang.reflect.Method; <br /> public class Util { <br /> //姝ゆ柟娉曠殑鏈澶уソ澶勬槸娌℃湁綾誨悕Son1,Son2 鍙互閫氳繃鍙傛暟鏉ユ寚瀹氾紝紼嬪簭閲岄潰鏍規湰涓嶇敤鍑虹幇 <br /> public static Base convertStr2ServiceBean(String beanName,String fieldSetter,String paraValue){ <br /> Base base = null ; <br /> try { <br /> Class cls = Class.forName(beanName) ; <br /> base = (Base)cls.newInstance() ; <br /> Class[] paraTypes = new Class[]{String.class }; <br /> Method method = cls.getMethod(fieldSetter, paraTypes) ; <br /> String[] paraValues = new String[]{paraValue} ; <br /> method.invoke(base, paraValues) ; <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> return base ; <br /> } <br /> <br /> <br /> public static void main(String[] args){ <br /> Son1 son1 =(Son1) Util.convertStr2ServiceBean("trying.reflect.Son1","setName","wang da sha"); <br /> System.out.println("son1.getName() :"+son1.getName()) ; <br /> } <br /> } <br /> //璋冪敤緇撴灉錛?<br /> //son1.getName() :wang da sha <br /> <br /> 璋㈣阿錛佸笇鏈涜兘緇欏ぇ瀹朵竴鐐瑰惎鍙戯紒 <br /> 錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞 <br /> 闄勶細 <br /> //涓嬮潰榪欑瘒鏂囨。鏉ユ簮浜嶪nternet錛屼綔鑰呬笉璇?<br /> Reflection 鏄?Java 紼嬪簭寮鍙戣璦鐨勭壒寰佷箣涓錛屽畠鍏佽榪愯涓殑 Java 紼嬪簭瀵硅嚜韜繘琛屾鏌ワ紝鎴栬呰“鑷”錛屽茍鑳界洿鎺ユ搷浣滅▼搴忕殑鍐呴儴灞炴с備緥濡傦紝浣跨敤瀹冭兘鑾峰緱 Java 綾諱腑鍚勬垚鍛樼殑鍚嶇О騫舵樉紺哄嚭鏉ャ?<br /> Java 鐨勮繖涓鑳藉姏鍦ㄥ疄闄呭簲鐢ㄤ腑涔熻鐢ㄥ緱涓嶆槸寰堝錛屼絾鏄湪鍏跺畠鐨勭▼搴忚璁¤璦涓牴鏈氨涓嶅瓨鍦ㄨ繖涓鐗規с備緥濡傦紝Pascal銆丆 鎴栬?C++ 涓氨娌℃湁鍔炴硶鍦ㄧ▼搴忎腑鑾峰緱鍑芥暟瀹氫箟鐩稿叧鐨勪俊鎭?<br /> JavaBean 鏄?reflection 鐨勫疄闄呭簲鐢ㄤ箣涓錛屽畠鑳借涓浜涘伐鍏峰彲瑙嗗寲鐨勬搷浣滆蔣浠剁粍浠躲傝繖浜涘伐鍏烽氳繃 reflection 鍔ㄦ佺殑杞藉叆騫跺彇寰?Java 緇勪歡(綾? 鐨勫睘鎬с?<br /> 1. 涓涓畝鍗曠殑渚嬪瓙 <br /> 鑰冭檻涓嬮潰榪欎釜綆鍗曠殑渚嬪瓙錛岃鎴戜滑鐪嬬湅 reflection 鏄浣曞伐浣滅殑銆?<br /> import java.lang.reflect.*; <br /> public class DumpMethods { <br /> public static void main(String args[]) { <br /> try { <br /> Class c = Class.forName(args[0]); <br /> Method m[] = c.getDeclaredMethods(); <br /> for (int i = 0; i < m.length; i++) <br /> System.out.println(m[i].toString()); <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> } <br /> } <br /> 鎸夊涓嬭鍙ユ墽琛岋細 <br /> java DumpMethods java.util.Stack <br /> 瀹冪殑緇撴灉杈撳嚭涓猴細 <br /> public java.lang.Object java.util.Stack.push(java.lang.Object) <br /> public synchronized java.lang.Object java.util.Stack.pop() <br /> public synchronized java.lang.Object java.util.Stack.peek() <br /> public boolean java.util.Stack.empty() <br /> public synchronized int java.util.Stack.search(java.lang.Object) <br /> 榪欐牱灝卞垪鍑轟簡java.util.Stack 綾葷殑鍚勬柟娉曞悕浠ュ強瀹冧滑鐨勯檺鍒剁鍜岃繑鍥炵被鍨嬨?<br /> 榪欎釜紼嬪簭浣跨敤 Class.forName 杞藉叆鎸囧畾鐨勭被錛岀劧鍚庤皟鐢?getDeclaredMethods 鏉ヨ幏鍙栬繖涓被涓畾涔変簡鐨勬柟娉曞垪琛ㄣ俲ava.lang.reflect.Methods 鏄敤鏉ユ弿榪版煇涓被涓崟涓柟娉曠殑涓涓被銆?<br /> 2.寮濮嬩嬌鐢?Reflection <br /> 鐢ㄤ簬 reflection 鐨勭被錛屽 Method錛屽彲浠ュ湪 java.lang.relfect 鍖呬腑鎵懼埌銆備嬌鐢ㄨ繖浜涚被鐨勬椂鍊欏繀欏昏閬靛驚涓変釜姝ラ錛氱涓姝ユ槸鑾峰緱浣犳兂鎿嶄綔鐨勭被鐨?java.lang.Class 瀵硅薄銆傚湪榪愯涓殑 Java 紼嬪簭涓紝鐢?java.lang.Class 綾繪潵鎻忚堪綾誨拰鎺ュ彛絳夈?<br /> 涓嬮潰灝辨槸鑾峰緱涓涓?Class 瀵硅薄鐨勬柟娉曚箣涓錛?<br /> Class c = Class.forName("java.lang.String"); <br /> 榪欐潯璇彞寰楀埌涓涓?String 綾葷殑綾誨璞°傝繕鏈夊彟涓縐嶆柟娉曪紝濡備笅闈㈢殑璇彞錛?<br /> Class c = int.class; <br /> 鎴栬?<br /> Class c = Integer.TYPE; <br /> 瀹冧滑鍙幏寰楀熀鏈被鍨嬬殑綾諱俊鎭傚叾涓悗涓縐嶆柟娉曚腑璁塊棶鐨勬槸鍩烘湰綾誨瀷鐨勫皝瑁呯被 (濡?Integer) 涓鍏堝畾涔夊ソ鐨?TYPE 瀛楁銆?<br /> 絎簩姝ユ槸璋冪敤璇稿 getDeclaredMethods 鐨勬柟娉曪紝浠ュ彇寰楄綾諱腑瀹氫箟鐨勬墍鏈夋柟娉曠殑鍒楄〃銆?<br /> 涓鏃﹀彇寰楄繖涓俊鎭紝灝卞彲浠ヨ繘琛岀涓夋浜嗏斺斾嬌鐢?reflection API 鏉ユ搷浣滆繖浜涗俊鎭紝濡備笅闈㈣繖孌典唬鐮侊細 <br /> Class c = Class.forName("java.lang.String"); <br /> Method m[] = c.getDeclaredMethods(); <br /> System.out.println(m[0].toString()); <br /> 瀹冨皢浠ユ枃鏈柟寮忔墦鍗板嚭 String 涓畾涔夌殑絎竴涓柟娉曠殑鍘熷瀷銆?<br /> 鍦ㄤ笅闈㈢殑渚嬪瓙涓紝榪欎笁涓楠ゅ皢涓轟嬌鐢?reflection 澶勭悊鐗規畩搴旂敤紼嬪簭鎻愪緵渚嬭瘉銆?<br /> 妯℃嫙 instanceof 鎿嶄綔絎?<br /> 寰楀埌綾諱俊鎭箣鍚庯紝閫氬父涓嬩竴涓楠ゅ氨鏄В鍐沖叧浜?Class 瀵硅薄鐨勪竴浜涘熀鏈殑闂銆備緥濡傦紝Class.isInstance 鏂規硶鍙互鐢ㄤ簬妯℃嫙 instanceof 鎿嶄綔絎︼細 <br /> class A { <br /> } <br /> public class instance1 { <br /> public static void main(String args[]) { <br /> try { <br /> Class cls = Class.forName("A"); <br /> boolean b1 = cls.isInstance(new Integer(37)); <br /> System.out.println(b1); <br /> boolean b2 = cls.isInstance(new A()); <br /> System.out.println(b2); <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> } <br /> } <br /> 鍦ㄨ繖涓緥瀛愪腑鍒涘緩浜嗕竴涓?A 綾葷殑 Class 瀵硅薄錛岀劧鍚庢鏌ヤ竴浜涘璞℃槸鍚︽槸 A 鐨勫疄渚嬨侷nteger(37) 涓嶆槸錛屼絾 new A() 鏄?<br /> 3.鎵懼嚭綾葷殑鏂規硶 <br /> 鎵懼嚭涓涓被涓畾涔変簡浜涗粈涔堟柟娉曪紝榪欐槸涓涓潪甯告湁浠峰間篃闈炲父鍩虹鐨?reflection 鐢ㄦ硶銆備笅闈㈢殑浠g爜灝卞疄鐜頒簡榪欎竴鐢ㄦ硶錛?<br /> import java.lang.reflect.*; <br /> public class method1 { <br /> private int f1(Object p, int x) throws NullPointerException { <br /> if (p == null) <br /> throw new NullPointerException(); <br /> return x; <br /> } <br /> public static void main(String args[]) { <br /> try { <br /> Class cls = Class.forName("method1"); <br /> Method methlist[] = cls.getDeclaredMethods(); <br /> for (int i = 0; i < methlist.length; i++) { <br /> Method m = methlist[i]; <br /> System.out.println("name = " + m.getName()); <br /> System.out.println("decl class = " + m.getDeclaringClass()); <br /> Class pvec[] = m.getParameterTypes(); <br /> for (int j = 0; j < pvec.length; j++) <br /> System.out.println("param #" + j + " " + pvec[j]); <br /> Class evec[] = m.getExceptionTypes(); <br /> for (int j = 0; j < evec.length; j++) <br /> System.out.println("exc #" + j + " " + evec[j]); <br /> System.out.println("return type = " + m.getReturnType()); <br /> System.out.println("-----"); <br /> } <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> } <br /> } <br /> 榪欎釜紼嬪簭棣栧厛鍙栧緱 method1 綾葷殑鎻忚堪錛岀劧鍚庤皟鐢?getDeclaredMethods 鏉ヨ幏鍙栦竴緋誨垪鐨?Method 瀵硅薄錛屽畠浠垎鍒弿榪頒簡瀹氫箟鍦ㄧ被涓殑姣忎竴涓柟娉曪紝鍖呮嫭 public 鏂規硶銆乸rotected 鏂規硶銆乸ackage 鏂規硶鍜?private 鏂規硶絳夈傚鏋滀綘鍦ㄧ▼搴忎腑浣跨敤 getMethods 鏉ヤ唬鏇?getDeclaredMethods錛屼綘榪樿兘鑾峰緱緇ф壙鏉ョ殑鍚勪釜鏂規硶鐨勪俊鎭?<br /> 鍙栧緱浜?Method 瀵硅薄鍒楄〃涔嬪悗錛岃鏄劇ず榪欎簺鏂規硶鐨勫弬鏁扮被鍨嬨佸紓甯哥被鍨嬪拰榪斿洖鍊肩被鍨嬬瓑灝變笉闅句簡銆傝繖浜涚被鍨嬫槸鍩烘湰綾誨瀷榪樻槸綾葷被鍨嬶紝閮藉彲浠ョ敱鎻忚堪綾葷殑瀵硅薄鎸夐『搴忕粰鍑恒?<br /> 杈撳嚭鐨勭粨鏋滃涓嬶細 <br /> name = f1 <br /> decl class = class method1 <br /> param #0 class java.lang.Object <br /> param #1 int <br /> exc #0 class java.lang.NullPointerException <br /> return type = int <br /> ----- <br /> name = main <br /> decl class = class method1 <br /> param #0 class [Ljava.lang.String; <br /> return type = void <br /> ----- <br /> <br /> 4.鑾峰彇鏋勯犲櫒淇℃伅 <br /> 鑾峰彇綾繪瀯閫犲櫒鐨勭敤娉曚笌涓婅堪鑾峰彇鏂規硶鐨勭敤娉曠被浼鹼紝濡傦細 <br /> import java.lang.reflect.*; <br /> public class constructor1 { <br /> public constructor1() { <br /> } <br /> protected constructor1(int i, double d) { <br /> } <br /> public static void main(String args[]) { <br /> try { <br /> Class cls = Class.forName("constructor1"); <br /> Constructor ctorlist[] = cls.getDeclaredConstructors(); <br /> for (int i = 0; i < ctorlist.length; i++) { <br /> Constructor ct = ctorlist[i]; <br /> System.out.println("name = " + ct.getName()); <br /> System.out.println("decl class = " + ct.getDeclaringClass()); <br /> Class pvec[] = ct.getParameterTypes(); <br /> for (int j = 0; j < pvec.length; j++) <br /> System.out.println("param #" + j + " " + pvec[j]); <br /> Class evec[] = ct.getExceptionTypes(); <br /> for (int j = 0; j < evec.length; j++) <br /> System.out.println("exc #" + j + " " + evec[j]); <br /> System.out.println("-----"); <br /> } <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> } <br /> } <br /> 榪欎釜渚嬪瓙涓病鑳借幏寰楄繑鍥炵被鍨嬬殑鐩稿叧淇℃伅錛岄偅鏄洜涓烘瀯閫犲櫒娌℃湁榪斿洖綾誨瀷銆?<br /> 榪欎釜紼嬪簭榪愯鐨勭粨鏋滄槸錛?<br /> name = constructor1 <br /> decl class = class constructor1 <br /> ----- <br /> name = constructor1 <br /> decl class = class constructor1 <br /> param #0 int <br /> param #1 double <br /> ----- <br /> 5.鑾峰彇綾葷殑瀛楁(鍩? <br /> 鎵懼嚭涓涓被涓畾涔変簡鍝簺鏁版嵁瀛楁涔熸槸鍙兘鐨勶紝涓嬮潰鐨勪唬鐮佸氨鍦ㄥ共榪欎釜浜嬫儏錛?<br /> <br /> import java.lang.reflect.*; <br /> public class field1 { <br /> private double d; <br /> public static final int i = 37; <br /> String s = "testing"; <br /> public static void main(String args[]) { <br /> try { <br /> Class cls = Class.forName("field1"); <br /> Field fieldlist[] = cls.getDeclaredFields(); <br /> for (int i = 0; i < fieldlist.length; i++) { <br /> Field fld = fieldlist[i]; <br /> System.out.println("name = " + fld.getName()); <br /> System.out.println("decl class = " + fld.getDeclaringClass()); <br /> System.out.println("type = " + fld.getType()); <br /> int mod = fld.getModifiers(); <br /> System.out.println("modifiers = " + Modifier.toString(mod)); <br /> System.out.println("-----"); <br /> } <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> } <br /> } <br /> 榪欎釜渚嬪瓙鍜屽墠闈㈤偅涓緥瀛愰潪甯哥浉浼箋備緥涓嬌鐢ㄤ簡涓涓柊涓滆タ Modifier錛屽畠涔熸槸涓涓?reflection 綾伙紝鐢ㄦ潵鎻忚堪瀛楁鎴愬憳鐨勪慨楗拌錛屽“private int”銆傝繖浜涗慨楗拌鑷韓鐢辨暣鏁版弿榪幫紝鑰屼笖浣跨敤 Modifier.toString 鏉ヨ繑鍥炰互“瀹樻柟”欏哄簭鎺掑垪鐨勫瓧絎︿覆鎻忚堪 (濡?#8220;static”鍦?#8220;final”涔嬪墠)銆傝繖涓▼搴忕殑杈撳嚭鏄細 <br /> name = d <br /> decl class = class field1 <br /> type = double <br /> modifiers = private <br /> ----- <br /> name = i <br /> decl class = class field1 <br /> type = int <br /> modifiers = public static final <br /> ----- <br /> name = s <br /> decl class = class field1 <br /> type = class java.lang.String <br /> modifiers = <br /> ----- <br /> 鍜岃幏鍙栨柟娉曠殑鎯呭喌涓涓嬶紝鑾峰彇瀛楁鐨勬椂鍊欎篃鍙互鍙彇寰楀湪褰撳墠綾諱腑鐢蟲槑浜嗙殑瀛楁淇℃伅 (getDeclaredFields)錛屾垨鑰呬篃鍙互鍙栧緱鐖剁被涓畾涔夌殑瀛楁 (getFields) 銆?<br /> <br /> 6.鏍規嵁鏂規硶鐨勫悕縐版潵鎵ц鏂規硶 <br /> 鏂囨湰鍒拌繖閲岋紝鎵涓劇殑渚嬪瓙鏃犱竴渚嬪閮戒笌濡備綍鑾峰彇綾葷殑淇℃伅鏈夊叧銆傛垜浠篃鍙互鐢?reflection 鏉ュ仛涓浜涘叾瀹冪殑浜嬫儏錛屾瘮濡傛墽琛屼竴涓寚瀹氫簡鍚嶇О鐨勬柟娉曘備笅闈㈢殑紺轟緥婕旂ず浜嗚繖涓鎿嶄綔錛?<br /> import java.lang.reflect.*; <br /> public class method2 { <br /> public int add(int a, int b) { <br /> return a + b; <br /> } <br /> public static void main(String args[]) { <br /> try { <br /> Class cls = Class.forName("method2"); <br /> Class partypes[] = new Class[2]; <br /> partypes[0] = Integer.TYPE; <br /> partypes[1] = Integer.TYPE; <br /> Method meth = cls.getMethod("add", partypes); <br /> method2 methobj = new method2(); <br /> Object arglist[] = new Object[2]; <br /> arglist[0] = new Integer(37); <br /> arglist[1] = new Integer(47); <br /> Object retobj = meth.invoke(methobj, arglist); <br /> Integer retval = (Integer) retobj; <br /> System.out.println(retval.intvalue()); <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> } <br /> } <br /> 鍋囧涓涓▼搴忓湪鎵ц鐨勬煇澶勭殑鏃跺欐墠鐭ラ亾闇瑕佹墽琛屾煇涓柟娉曪紝榪欎釜鏂規硶鐨勫悕縐版槸鍦ㄧ▼搴忕殑榪愯榪囩▼涓寚瀹氱殑 (渚嬪錛孞avaBean 寮鍙戠幆澧冧腑灝變細鍋氳繖鏍風殑浜?錛岄偅涔堜笂闈㈢殑紼嬪簭婕旂ず浜嗗浣曞仛鍒般?<br /> 涓婁緥涓紝getMethod 鐢ㄤ簬鏌ユ壘涓涓叿鏈変袱涓暣鍨嬪弬鏁頒笖鍚嶄負 add 鐨勬柟娉曘傛壘鍒拌鏂規硶騫跺垱寤轟簡鐩稿簲鐨?Method 瀵硅薄涔嬪悗錛屽湪姝g‘鐨勫璞″疄渚嬩腑鎵ц瀹冦傛墽琛岃鏂規硶鐨勬椂鍊欙紝闇瑕佹彁渚涗竴涓弬鏁板垪琛紝榪欏湪涓婁緥涓槸鍒嗗埆鍖呰浜嗘暣鏁?37 鍜?47 鐨勪袱涓?Integer 瀵硅薄銆傛墽琛屾柟娉曠殑榪斿洖鐨勫悓鏍鋒槸涓涓?Integer 瀵硅薄錛屽畠灝佽浜嗚繑鍥炲?84銆?<br /> 7.鍒涘緩鏂扮殑瀵硅薄 <br /> 瀵逛簬鏋勯犲櫒錛屽垯涓嶈兘鍍忔墽琛屾柟娉曢偅鏍瘋繘琛岋紝鍥犱負鎵ц涓涓瀯閫犲櫒灝辨剰鍛崇潃鍒涘緩浜嗕竴涓柊鐨勫璞?(鍑嗙‘鐨勮錛屽垱寤轟竴涓璞$殑榪囩▼鍖呮嫭鍒嗛厤鍐呭瓨鍜屾瀯閫犲璞?銆傛墍浠ワ紝涓庝笂渚嬫渶鐩鎬技鐨勪緥瀛愬涓嬶細 <br /> import java.lang.reflect.*; <br /> public class constructor2 { <br /> public constructor2() { <br /> } <br /> public constructor2(int a, int b) { <br /> System.out.println("a = " + a + " b = " + b); <br /> } <br /> public static void main(String args[]) { <br /> try { <br /> Class cls = Class.forName("constructor2"); <br /> Class partypes[] = new Class[2]; <br /> partypes[0] = Integer.TYPE; <br /> partypes[1] = Integer.TYPE; <br /> Constructor ct = cls.getConstructor(partypes); <br /> Object arglist[] = new Object[2]; <br /> arglist[0] = new Integer(37); <br /> arglist[1] = new Integer(47); <br /> Object retobj = ct.newInstance(arglist); <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> } <br /> } <br /> 鏍規嵁鎸囧畾鐨勫弬鏁扮被鍨嬫壘鍒扮浉搴旂殑鏋勯犲嚱鏁板茍鎵ц瀹冿紝浠ュ垱寤轟竴涓柊鐨勫璞″疄渚嬨備嬌鐢ㄨ繖縐嶆柟娉曞彲浠ュ湪紼嬪簭榪愯鏃跺姩鎬佸湴鍒涘緩瀵硅薄錛岃屼笉鏄湪緙栬瘧鐨勬椂鍊欏垱寤哄璞★紝榪欎竴鐐歸潪甯告湁浠峰箋?<br /> 8.鏀瑰彉瀛楁(鍩?鐨勫?<br /> reflection 鐨勮繕鏈変竴涓敤澶勫氨鏄敼鍙樺璞℃暟鎹瓧孌電殑鍊箋俽eflection 鍙互浠庢鍦ㄨ繍琛岀殑紼嬪簭涓牴鎹悕縐版壘鍒板璞$殑瀛楁騫舵敼鍙樺畠錛屼笅闈㈢殑渚嬪瓙鍙互璇存槑榪欎竴鐐癸細 <br /> import java.lang.reflect.*; <br /> public class field2 { <br /> public double d; <br /> public static void main(String args[]) { <br /> try { <br /> Class cls = Class.forName("field2"); <br /> Field fld = cls.getField("d"); <br /> field2 f2obj = new field2(); <br /> System.out.println("d = " + f2obj.d); <br /> fld.setDouble(f2obj, 12.34); <br /> System.out.println("d = " + f2obj.d); <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> } <br /> } <br /> 榪欎釜渚嬪瓙涓紝瀛楁 d 鐨勫艱鍙樹負浜?12.34銆?<br /> 9.浣跨敤鏁扮粍 <br /> 鏈枃浠嬬粛鐨?reflection 鐨勬渶鍚庝竴縐嶇敤娉曟槸鍒涘緩鐨勬搷浣滄暟緇勩傛暟緇勫湪 Java 璇█涓槸涓縐嶇壒孌婄殑綾葷被鍨嬶紝涓涓暟緇勭殑寮曠敤鍙互璧嬬粰 Object 寮曠敤銆傝瀵熶笅闈㈢殑渚嬪瓙鐪嬬湅鏁扮粍鏄庝箞宸ヤ綔鐨勶細 <br /> import java.lang.reflect.*; <br /> public class array1 { <br /> public static void main(String args[]) { <br /> try { <br /> Class cls = Class.forName("java.lang.String"); <br /> Object arr = Array.newInstance(cls, 10); <br /> Array.set(arr, 5, "this is a test"); <br /> String s = (String) Array.get(arr, 5); <br /> System.out.println(s); <br /> } catch (Throwable e) { <br /> System.err.println(e); <br /> } <br /> } <br /> } <br /> 渚嬩腑鍒涘緩浜?10 涓崟浣嶉暱搴︾殑 String 鏁扮粍錛屼負絎?5 涓綅緗殑瀛楃涓茶祴浜嗗鹼紝鏈鍚庡皢榪欎釜瀛楃涓蹭粠鏁扮粍涓彇寰楀茍鎵撳嵃浜嗗嚭鏉ャ?<br /> 涓嬮潰榪欐浠g爜鎻愪緵浜嗕竴涓洿澶嶆潅鐨勪緥瀛愶細 <br /> import java.lang.reflect.*; <br /> public class array2 { <br /> public static void main(String args[]) { <br /> int dims[] = new int[]{5, 10, 15}; <br /> Object arr = Array.newInstance(Integer.TYPE, dims); <br /> Object arrobj = Array.get(arr, 3); <br /> Class cls = arrobj.getClass().getComponentType(); <br /> System.out.println(cls); <br /> arrobj = Array.get(arrobj, 5); <br /> Array.setInt(arrobj, 10, 37); <br /> int arrcast[][][] = (int[][][]) arr; <br /> System.out.println(arrcast[3][5][10]); <br /> } <br /> } <br /> 渚嬩腑鍒涘緩浜嗕竴涓?5 x 10 x 15 鐨勬暣鍨嬫暟緇勶紝騫朵負澶勪簬 [3][5][10] 鐨勫厓绱犺祴浜嗗間負 37銆傛敞鎰忥紝澶氱淮鏁扮粍瀹為檯涓婂氨鏄暟緇勭殑鏁扮粍錛屼緥濡傦紝絎竴涓?Array.get 涔嬪悗錛宎rrobj 鏄竴涓?10 x 15 鐨勬暟緇勩傝繘鑰屽彇寰楀叾涓殑涓涓厓绱狅紝鍗抽暱搴︿負 15 鐨勬暟緇勶紝騫朵嬌鐢?Array.setInt 涓哄畠鐨勭 10 涓厓绱犺祴鍊箋?<br /> 娉ㄦ剰鍒涘緩鏁扮粍鏃剁殑綾誨瀷鏄姩鎬佺殑錛屽湪緙栬瘧鏃跺茍涓嶇煡閬撳叾綾誨瀷銆?/ca><br /> <img src ="http://www.tkk7.com/freefly/aggbug/161971.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/freefly/" target="_blank">freefly</a> 2007-11-20 23:28 <a href="http://www.tkk7.com/freefly/articles/161971.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://www.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> 主站蜘蛛池模板: <a href="http://wwwby1378.com" target="_blank">91黑丝国产线观看免费 </a>| <a href="http://zaidongmaixi.com" target="_blank">大地资源网高清在线观看免费</a>| <a href="http://w7768.com" target="_blank">国产亚洲精品成人a v小说</a>| <a href="http://bjhuicui.com" target="_blank">免费国产叼嘿视频大全网站</a>| <a href="http://zgjzysfc.com" target="_blank">亚洲a∨无码男人的天堂</a>| <a href="http://www2019rz.com" target="_blank">国产三级免费电影</a>| <a href="http://tj-zhongfa.com" target="_blank">国产精品免费观看调教网</a>| <a href="http://ittenyear.com" target="_blank">亚洲三级高清免费</a>| <a href="http://yaku100.com" target="_blank">国产亚洲精品高清在线</a>| <a href="http://wxzg66.com" target="_blank">国产黄色免费网站</a>| <a href="http://918989b.com" target="_blank">深夜福利在线免费观看</a>| <a href="http://91sebo.com" target="_blank">久久精品国产亚洲av麻豆色欲 </a>| <a href="http://www16am8.com" target="_blank">免费少妇a级毛片人成网</a>| <a href="http://12345ww.com" target="_blank">性无码免费一区二区三区在线</a>| <a href="http://8953y.com" target="_blank">亚洲免费网站观看视频</a>| <a href="http://iciap.com" target="_blank">亚洲国产精品热久久</a>| <a href="http://tom-erc20.com" target="_blank">免费看小12萝裸体视频国产</a>| <a href="http://ymiwang.com" target="_blank">91精品国产免费</a>| <a href="http://rj150.com" target="_blank">人体大胆做受免费视频</a>| <a href="http://bb927bb.com" target="_blank">亚洲欧洲日韩极速播放</a>| <a href="http://516698.com" target="_blank">亚洲乱码国产乱码精品精</a>| <a href="http://172pk.com" target="_blank">在线播放免费人成视频在线观看</a>| <a href="http://6969xxoo.com" target="_blank">99久久99这里只有免费的精品</a>| <a href="http://1444000.com" target="_blank">亚洲人成网站18禁止</a>| <a href="http://imfever.com" target="_blank">亚洲宅男永久在线</a>| <a href="http://jxxitutu.com" target="_blank">久久亚洲AV永久无码精品</a>| <a href="http://caita88.com" target="_blank">色www永久免费视频</a>| <a href="http://8mav938.com" target="_blank">aⅴ免费在线观看</a>| <a href="http://dw168cn.com" target="_blank">丰满少妇作爱视频免费观看</a>| <a href="http://fennenll.com" target="_blank">亚洲av午夜精品无码专区</a>| <a href="http://w6446.com" target="_blank">亚洲大成色www永久网站</a>| <a href="http://555yyyy.com" target="_blank">亚洲高清无码在线观看</a>| <a href="http://cebeke.com" target="_blank">24小时免费直播在线观看</a>| <a href="http://fense1.com" target="_blank">99精品视频免费观看</a>| <a href="http://888xxss.com" target="_blank">巨胸喷奶水视频www免费视频</a>| <a href="http://kt4444.com" target="_blank">亚洲成a人片在线观看天堂无码</a>| <a href="http://shlamore.com" target="_blank">亚洲精品美女久久久久9999</a>| <a href="http://wivyswap.com" target="_blank">日韩亚洲一区二区三区</a>| <a href="http://sxjttxkywl.com" target="_blank">jlzzjlzz亚洲乱熟在线播放</a>| <a href="http://yunyitai.com" target="_blank">国产又黄又爽又刺激的免费网址 </a>| <a href="http://78555yy.com" target="_blank">国产免费一区二区三区不卡</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>