溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

java關(guān)于調(diào)用方法的匯總

發(fā)布時(shí)間:2020-08-30 06:52:08 來(lái)源:腳本之家 閱讀:145 作者:laozhang 欄目:編程語(yǔ)言

以下我們根據(jù)JAVA的調(diào)用方法做了整理和總結(jié),以及相關(guān)的調(diào)用代碼也做測(cè)試,以下來(lái)學(xué)習(xí)下。

java方法主要分為三種:

一種是靜態(tài)方法

這種方法的話用static修飾,這個(gè)方法不需要與某個(gè)特定對(duì)象進(jìn)行綁定;第二種就是常見的沒(méi)有用static修飾的方法;第三種就是構(gòu)造方法,構(gòu)造方法主要用于對(duì)類進(jìn)行初始化。

靜態(tài)方法可以使用一個(gè)定義且實(shí)例化過(guò)的對(duì)象來(lái)調(diào)用也可以直接使用類名來(lái)調(diào)用。

實(shí)例方法必須使用一個(gè)被定義且實(shí)例化過(guò)的對(duì)象來(lái)調(diào)用。

class A{
  //靜態(tài)方法,可以使用類名點(diǎn)方法名直接調(diào)用,比如A.sayHello() 
  public static void sayHello(){
    System.out.println("靜態(tài)方法輸出成功:Hello");
  }
  //實(shí)例方法,必須創(chuàng)建類的實(shí)例,然后才能調(diào)用A a = new A(); a.sayWorld();
  public void sayWorld(){
    System.out.println("實(shí)例方法輸出成功:World");
  }
}
 
public class MyDemo {  
  public static void main(String[] args) {
    A a = null;
    try{
      a.sayHello();//調(diào)用靜態(tài)方法
    }catch(NullPointerException e){
      System.out.println("調(diào)用靜態(tài)方法出現(xiàn)了空指針異常");
    }
    try{
      a.sayWorld();//調(diào)用實(shí)例方法
    }catch(NullPointerException e){
      System.out.println("調(diào)用實(shí)例方法出現(xiàn)了空指針異常");
    }
  }
}

測(cè)試輸出:

靜態(tài)方法輸出成功:Hello

調(diào)用實(shí)例方法出現(xiàn)了空指針異常

Java動(dòng)態(tài)調(diào)用類中方法代碼

使用Math.class.getDeclaredMethod("sin", Double.TYPE);訪問(wèn)指定的方法,其中”sin”表示要訪問(wèn)的方法的名稱為sin,Double.TYPE表示入口參數(shù)的類型為double

import java.lang.reflect.Method; 

public class DongTai { 
  public static void main(String[] args) { 
    try { 
      System.out.println("調(diào)用Math類的靜態(tài)方法sin()"); 
      Method sin = Math.class.getDeclaredMethod("sin", Double.TYPE); 
      Double sin1 = (Double) sin.invoke(null, new Integer(1)); 
      System.out.println("1的正弦值是:" + sin1); 
      System.out.println("調(diào)用String類的非靜態(tài)方法equals()"); 
      Method equals = String.class.getDeclaredMethod("equals", Object.class); 
      Boolean mrsoft = (Boolean) equals.invoke(new String("明日科技"), "明日科技"); 
      System.out.println("字符串是否是明日科技:" + mrsoft); 
    } catch (Exception e) { 
      e.printStackTrace(); 
    } 
  } 
} 

運(yùn)行后的輸出結(jié)果

java關(guān)于調(diào)用方法的匯總

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI