亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java定義形式及可變參數(shù)實例解析

 更新時間:2019年12月16日 10:00:30   作者:sumerday  
這篇文章主要介紹了Java定義形式及可變參數(shù)實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

這篇文章主要介紹了Java定義形式及可變參數(shù)實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

Java中的方法類似于面向過程程序設(shè)計中的函數(shù),但與其不同的是,Java中的方法不能獨立存在,它屬于類或?qū)ο?。既然方法屬于類或?qū)ο螅敲?,方法的調(diào)用者就必須是類或?qū)ο蟆#ó?dāng)然,之后將會提到的同一個類中方法互相調(diào)用,實際上也是類或?qū)ο笤谧鳛檎{(diào)用者)

還是先上一段代碼:

package com.my.pac05;

/**
 * @author Summerday
 * @date 2019/12/1 15:30
 */
public class MethodTest {
  public static void main(String[] args) {
    //通過類直接調(diào)用static修飾的first()方法
    MethodTest.first();
    //MethodTest.second();錯誤
    //方法由static修飾,可以通過類直接調(diào)用static修飾的方法
    //創(chuàng)建實例對象,訪問沒有static修飾的普通方法
    MethodTest method = new MethodTest();
    method.second();
    //接收secondVal方法的返回值
    int secondValue = method.secondVal();
    System.out.println(secondValue);//10
    
    method.third(2);
    //接收thirdVal方法的返回值
    int thirdValue = method.thirdVal(20);
    System.out.println(thirdValue);//20
    
    method.fourth('a', 'b');
    method.fifth("hello","what's","your","name");
    System.out.println();
    method.sixth(new String[]{"hello","what's","your","name"});
  }

  //static修飾的靜態(tài)方法
  public static void first(){
    System.out.println("static: no param...");
  }
  //無參數(shù)(無參無返)
  public void second() {
    System.out.println("no param..");
  }
  //無參有返
  public int secondVal(){
    return 10;
  }
  //一個參數(shù)(有參無返)
  public void third(int param1) {
    System.out.println("one param.. value is " + param1);
  }
  //有參有返
  public int thirdVal(int param1){
    return param1;
  }
  //兩個參數(shù)
  public void fourth(char param1, char param2) {
    System.out.println("two params.. param1 is "
        + param1 + ",param2 is " + param2);
  }
  //多個參數(shù)1
  public void fifth(String...params){
    System.out.println("*type...param*");
    for(String param:params){
      System.out.print(param+" ");
    }
  }
  //錯誤:public void fifth1(String...params,int a )
  //多個參數(shù)2
  public void sixth(String[] params){
    System.out.println("*type[] param*");
    for(String param:params){
      System.out.print(param+" ");
    }
  }
}

方法調(diào)用

使用static修飾的方法

//通過類直接調(diào)用static修飾的fourth()方法
  MethodTest.first();
//也可以通過創(chuàng)建的對象調(diào)用static修飾的方法
  method.first();
//static修飾的靜態(tài)方法
  public static void first(){
    System.out.println("static: no param...");
}
  • 屬于這個類本身。
  • 類和對象都可以調(diào)用。
  • 類和對象調(diào)用的結(jié)果相同。

沒有static修飾的方法

//MethodTest.second();錯誤
//創(chuàng)建實例對象,訪問沒有static修飾的普通方法
  MethodTest method = new MethodTest();
  method.second();
//無static修飾的普通方法
  public void second() {
    System.out.println("no param..");
  }
  • 屬于類的對象,不屬于類本身。
  • 只能由對象作為調(diào)用者。
  • 使用不同對象調(diào)用同一個方法,結(jié)果可能不同。

方法的定義格式

無參無返

//無參無返
  public void second() {
    System.out.println("no param..");
  }

無參有返

 //無參有返
  public int secondVal(){
    return 10;
  }

有參無返

//有參無返
  public void third(int param1) {
    System.out.println("one param.. value is " + param1);
  }

有參有返

 //有參有返
  public int thirdVal(int param1){
    return param1;
  }

形參個數(shù)可變的方法

采用數(shù)組形參來定義

把數(shù)組作為形參加入形參列表中。類似于我們用的最多的public static void main(String[] args)相當(dāng)于main方法接收一個String類型的數(shù)組,也就是命令行參數(shù),關(guān)于命令行參數(shù),就暫時不提啦。

//多個參數(shù)2
  public void sixth(String[] params){
    System.out.println("*type[] param*");
    for(String param:params){
      System.out.print(param+" ");
    }
  }

只能接收數(shù)組。

可以出現(xiàn)在形參列表的任意位置。

采用JDK1.5新特性來定義

JDK1.5之后,可以在最后一個參數(shù)類型和參數(shù)名之間加上...

 //多個參數(shù)1
  public void fifth(String...params){
    System.out.println("*type...param*");
    for(String param:params){
      System.out.print(param+" ");
    }
  }
  //需要在最后一個參數(shù)類型和參數(shù)名之間?。?!
  //錯誤:public void fifth1(String...params,int a )
  • 表明可以接收多個參數(shù)值,多個參數(shù)值被當(dāng)作數(shù)組傳入。
  • 傳入?yún)?shù)形式可以是多個參數(shù)以‘,'相隔,也可以傳入數(shù)組。
  • 只能處于參數(shù)列表之后,所以一個方法中最多只能有一個長度可變的形參。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • k8s解決java服務(wù)下載超時問題小結(jié)

    k8s解決java服務(wù)下載超時問題小結(jié)

    我們在走ingress的java程序的時候,往往會有導(dǎo)出數(shù)據(jù)的功能,這個時候就會有因網(wǎng)絡(luò)慢、后臺處理時間過長導(dǎo)致下載超時,也有因下載文件太大,導(dǎo)致下載失敗,下面給分享k8s解決java服務(wù)下載超時問題,感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • mybatis createcriteria和or的區(qū)別說明

    mybatis createcriteria和or的區(qū)別說明

    這篇文章主要介紹了mybatis createcriteria和or的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • SpringBoot使用Redisson實現(xiàn)延遲執(zhí)行的完整示例

    SpringBoot使用Redisson實現(xiàn)延遲執(zhí)行的完整示例

    這篇文章主要介紹了SpringBoot使用Redisson實現(xiàn)延遲執(zhí)行的完整示例,文中通過代碼示例講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-06-06
  • IDEA全局查找關(guān)鍵字的用法解讀

    IDEA全局查找關(guān)鍵字的用法解讀

    這篇文章主要介紹了IDEA全局查找關(guān)鍵字的用法解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Spring IOC裝配Bean過程解析

    Spring IOC裝配Bean過程解析

    這篇文章主要介紹了Spring IOC裝配Bean過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • Spring中的Bean對象初始化詳解

    Spring中的Bean對象初始化詳解

    這篇文章主要介紹了Spring中的Bean對象初始化詳解,我們也可以根據(jù)Java語言的特性猜測到其很有可能是通過反射機制來完成Bean的初始化操作,接下來我們一步一步的剖析Spring對Bean的初始化操作,需要的朋友可以參考下
    2023-12-12
  • SpringBoot全局配置long轉(zhuǎn)String丟失精度問題解決方案

    SpringBoot全局配置long轉(zhuǎn)String丟失精度問題解決方案

    這篇文章主要介紹了SpringBoot全局配置long轉(zhuǎn)String丟失精度問題解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • Java中的異常Exception與處理方式詳解

    Java中的異常Exception與處理方式詳解

    這篇文章主要介紹了Java中的異常Exception與處理方式詳解, Java語言中,將程序執(zhí)行中發(fā)生的不正常情況稱為"異常"(開發(fā)過程中的語法錯誤和邏輯錯誤不是異常),需要的朋友可以參考下
    2024-01-01
  • Java編程實現(xiàn)對十六進制字符串異或運算代碼示例

    Java編程實現(xiàn)對十六進制字符串異或運算代碼示例

    這篇文章主要介紹了Java編程實現(xiàn)對十六進制字符串異或運算代碼示例,簡述了異或運算以及具體實例,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • JAVA多線程編程實例詳解

    JAVA多線程編程實例詳解

    這篇文章主要介紹了JAVA多線程編程,結(jié)合實例形式總結(jié)分析了多線程、鎖、線程池等相關(guān)原理及使用技巧,需要的朋友可以參考下
    2019-09-09

最新評論