亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

java語(yǔ)言

Java語(yǔ)法基礎(chǔ)中函數(shù)的使用說明

時(shí)間:2024-08-24 21:21:25 java語(yǔ)言 我要投稿
  • 相關(guān)推薦

Java語(yǔ)法基礎(chǔ)中函數(shù)的使用說明

  函數(shù)就是定義在類中的具有特定功能的一段獨(dú)立小程序,函數(shù)也稱為方法。以下是百分網(wǎng)小編搜索整理的關(guān)于Java語(yǔ)法基礎(chǔ)中函數(shù)的使用說明,供參考借鑒,希望對(duì)大家有所幫助!想了解更多相關(guān)信息請(qǐng)持續(xù)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!

  一、函數(shù)的定義及特點(diǎn)

  1) 什么是函數(shù)?

  函數(shù)就是定義在類中的具有特定功能的一段獨(dú)立小程序,函數(shù)也稱為方法

  2)Java中函數(shù)的格式:

  修飾符 返回值類型函數(shù)名(參數(shù)類型 形式參數(shù)1,參數(shù)類型 形式參數(shù)2,。。)

 。  執(zhí)行語(yǔ)句;

  return 返回值;

 。

  返回值類型:函數(shù)運(yùn)行后的結(jié)果的數(shù)據(jù)類型

  參數(shù)類型:是形式參數(shù)的數(shù)據(jù)類型

  形式參數(shù):是一個(gè)變量,用于存儲(chǔ)調(diào)用函數(shù)時(shí)傳遞給函數(shù)的實(shí)際參數(shù)

  實(shí)際參數(shù):傳遞給形式參數(shù)的具體數(shù)值

  return:用于結(jié)束函數(shù)

  返回值:該值會(huì)返回給調(diào)用者

  3) 函數(shù)的特點(diǎn)

  a) 定義函數(shù)可以將功能代碼進(jìn)行封裝

  b) 便于對(duì)該功能進(jìn)行復(fù)用

  c) 函數(shù)只有被調(diào)用才會(huì)被執(zhí)行

  d) 函數(shù)的出現(xiàn)提高了代碼的復(fù)用性

  e) 對(duì)于函數(shù)沒有具體返回值的情況,返回值類型用關(guān)鍵字void表示,那么該函數(shù)中的return語(yǔ)句如果在最后一行可以省略不寫,系統(tǒng)會(huì)幫你自動(dòng)加上。

  注:

  a) 函數(shù)中只能調(diào)用函數(shù),不可以在函數(shù)內(nèi)部定義函數(shù)。

  b) 定義函數(shù)時(shí),函數(shù)的結(jié)果應(yīng)該返回給調(diào)用者,交由調(diào)用者處理。

  c) 當(dāng)函數(shù)運(yùn)算后,沒有具體的返回值時(shí),這是返回值類型用一個(gè)特殊的關(guān)鍵字來標(biāo)識(shí)該關(guān)鍵字就是void,void:代表的是函數(shù)沒有具體返回值的情況。

  d)  當(dāng)函數(shù)的返回值類型是void時(shí),函數(shù)中的return語(yǔ)句可以省略不寫。

  4)  如何定義一個(gè)函數(shù)?

  函數(shù)其實(shí)就是一個(gè)功能,定義函數(shù)就是實(shí)現(xiàn)功能,通過兩個(gè)明確來完成:

  1)、明確該功能的運(yùn)算完的結(jié)果,其實(shí)是在明確這個(gè)函數(shù)的返回值類型。

  2)、在實(shí)現(xiàn)該功能的過程中是否有未知內(nèi)容參與了運(yùn)算,其實(shí)就是在明確這個(gè)函數(shù)的參數(shù)列表(參數(shù)類型&參數(shù)個(gè)數(shù))。

  5) 函數(shù)的作用:

  1)、用于定義功能。

  2)、用于封裝代碼提高代碼的復(fù)用性。

  注意:函數(shù)中只能調(diào)用函數(shù),不能定義函數(shù)。

  6) 主函數(shù):

  1)、保證該類的獨(dú)立運(yùn)行。

  2)、因?yàn)樗浅绦虻娜肟凇?/p>

  3)、因?yàn)樗诒籮vm調(diào)用。

  7) 函數(shù)定義名稱是為什么呢?

  答:1)、為了對(duì)該功能進(jìn)行標(biāo)示,方便于調(diào)用。

  2)、為了通過名稱就可以明確函數(shù)的功能,為了增加代碼的閱讀性。

  二、函數(shù)的應(yīng)用

  1)  兩個(gè)明確

  a)  明確要定義的功能最后的結(jié)果是什么?

  b)  明確在定義該功能的過程中,是否需要未知內(nèi)容參與運(yùn)算

  2)  示例:

  舉例1:

  代碼如下:

  class FunctionDemo

  {

  public static void main(String[] args)

  {

  int x = 4;

  System.out.println(x*3+5);

  x = 6;

  System.out.println(x*3+5);

  int y = 4*3+5;

  int z = 6*3+5;

  System.out.println(y);

  System.out.println(z);

  }

  }

  發(fā)現(xiàn)以上的運(yùn)算,因?yàn)楂@取不同數(shù)據(jù)的運(yùn)算結(jié)果,代碼出現(xiàn)了重復(fù)。

  為了提高代碼的復(fù)用性。對(duì)代碼進(jìn)行抽取。將這個(gè)部分定義成一個(gè)獨(dú)立的功能。方便與日后使用。

  java中對(duì)功能的定義是通過函數(shù)的形式來體現(xiàn)的。

  明確功能:需要定義功能,完成一個(gè)整數(shù)的*3+5的運(yùn)算,

  1,先明確函數(shù)定義的格式。

  /*

  修飾符返回值類型函數(shù)名(參數(shù)類型形式參數(shù)1,參數(shù)類型形式參數(shù)2,)

  {

  執(zhí)行語(yǔ)句;

  return 返回值;

  }

  代碼如下:

  class FunctionDemo

  {

  public static void getResult(int num)

  {

  System.out.println(num * 3 + 5);

  return;//可以省略

  }

  public static void main(String[] args)

  {

  getResult(5);

  }

  }

  對(duì)上述關(guān)于return是否省略這一小小知識(shí)點(diǎn)的總結(jié):

  當(dāng)函數(shù)運(yùn)算后,沒有具體的返回值時(shí),這是返回值類型用一個(gè)特殊的關(guān)鍵字來標(biāo)識(shí)。

  該關(guān)鍵字就是void。void:代表的是函數(shù)沒有具體返回值的情況。

  當(dāng)函數(shù)的返回值類型是void時(shí),函數(shù)中的return語(yǔ)句可以省略不寫。

  舉例2:

  代碼如下:

  class FunctionDemo2

  {

  public static void main(String[] args)

  {

  int sum = getSum(4,6);

  System.out.println("sum="+sum);

  sum = getSum(2,7);

  System.out.println("sum="+sum);

  }

  /*下面的這個(gè)功能定義思想有問題,為什么呢?因?yàn)橹粸橥瓿杉臃ㄟ\(yùn)算,至于是否要對(duì)和進(jìn)行打印操作,

  那是調(diào)用者的事,不要在該功能中完成。*/

  public static void get(int a,int b)

  {

  System.out.println(a+b);

  return ;

  }

  }

  如何定義一個(gè)函數(shù)呢?

  1,既然函數(shù)是一個(gè)獨(dú)立的功能,那么該功能的運(yùn)算結(jié)果是什么先明確

  因?yàn)檫@是在明確函數(shù)的返回值類型。

  2,在明確在定義該功能的過程中是否需要未知的內(nèi)容參與運(yùn)算。

  因?yàn)槭窃诿鞔_函數(shù)的參數(shù)列表(參數(shù)的類型和參數(shù)的個(gè)數(shù))。

  代碼如下:

  class FunctionDemo2

  {

  public static void main(String[] args)

  {

  /*

  int sum = getSum(4,6);

  System.out.println("sum="+sum);

  sum = getSum(2,7);

  System.out.println("sum="+sum);

  */

  //get(4,5);

  int x = getSum(4,4);

  int y = getSum(7,9);

  int num = getMax(x,y);

  }

  //需求:定義一個(gè)功能。完成3+4的運(yùn)算。并將結(jié)果返回給調(diào)用者。

  /*

  1,明確功能的結(jié)果:是一個(gè)整數(shù)的和。

  2,在實(shí)現(xiàn)該功能的過程中是否有未知內(nèi)容參與運(yùn)算,沒有。

  其實(shí)這兩個(gè)功能就是在明確函數(shù)的定義。

  1,是在明確函數(shù)的返回值類型。

  2,明確函數(shù)的參數(shù)列表( 參數(shù)的類型和參數(shù)的個(gè)數(shù))。

  */

  public static int getSum()

  {

  return 3+4;

  }

  /*

  以上這個(gè)函數(shù)的功能,結(jié)果是固定的,毫無(wú)擴(kuò)展性而言。

  為了方便用戶需求。由用戶來指定加數(shù)和被加數(shù)。這樣,功能才有意義。

  思路:

  1,功能結(jié)果是一個(gè)和。返回值類型是int。

  2,有未知內(nèi)容參與運(yùn)算。有兩個(gè)。這個(gè)兩個(gè)未知內(nèi)容的類型都是int。

  */

  public static int getSum(int x,int y)

  {

  return x+y;

  }

  /*

  需求:判斷兩個(gè)數(shù)是否相同。

  思路:

  1,明確功能的結(jié)果:結(jié)果是:boolean 。

  2,功能是否有未知內(nèi)容參與運(yùn)算。有,兩個(gè)整數(shù)。

  */

  public static boolean compare(int a,int b)

  {

  /*

  if(a==b)

  return true;

  //else

  return false;

  */

  //return (a==b)?true:false;

  return a==b;

  }

  /*

  需求:定義功能,對(duì)兩個(gè)數(shù)進(jìn)行比較。獲取較大的數(shù)。

  */

  public static int getMax(int a,int b)

  {

  /*

  if(a>b)

  return a;

  else

  return b;

  //或者用下面的三元運(yùn)算符

  */

  return (a>b)?a:b;

  }

  }

  3)   練習(xí):

  1,定義一個(gè)功能,用于打印矩形。

  2,定義一個(gè)打印99乘法表功能的函數(shù)。

  代碼如下:

  class  FunctionTest

  {

  public static void main(String[] args)

  {

  draw(5,6);

  printHr();

  draw(7,9);

  printHr();

  print99();

  }

  /*

  定義一個(gè)功能,用于打印矩形。

  思路:

  1,確定結(jié)果:沒有,因?yàn)橹苯哟蛴。所以返回值類型是void

  2,有未知內(nèi)容嗎?有,兩個(gè),因?yàn)榫匦蔚男泻土胁淮_定。

  */

  public static void draw(int row,int col)

  {

  for(int x=0; x<row; x++)

  {

  for(int y=0; y<col; y++)

  {

  System.out.print("*");

  }

  System.out.println();

  }

  }

  public static void printHr()

  {

  System.out.println("------------------------------");

  }

  /*

  定義一個(gè)打印99乘法表功能的函數(shù)。

  */

  public static void print99()

  {

  for(int x=1; x<=9; x++)

  {

  for(int y=1; y<=x; y++)

  {

  System.out.print(y+"*"+x+"="+y*x+"t");

  }

  System.out.println();

  }

  }

  }

  三、函數(shù)的重載(overload)

  重載的概念:

  在同一個(gè)類中,允許存在一個(gè)以上的同名函數(shù),只要它們的參數(shù)個(gè)數(shù)或者參數(shù)類型不同即可。

  重載的特點(diǎn):

  與返回值類型無(wú)關(guān),只看參數(shù)列表。

  重載的好處:

  方便于閱讀,優(yōu)化了程序設(shè)計(jì)。

  重載示例:

  返回兩個(gè)整數(shù)的和

  int add(int x,int y){return x+y;}

  返回三個(gè)整數(shù)的和

  int add(int x,int y, int z){return x+y+z;}

  返回兩個(gè)小數(shù)的和

  double add(double x,double y){return x+y;}

  什么時(shí)候用重載?

  當(dāng)定義的功能相同,但參與運(yùn)算的未知內(nèi)容不同。

  那么,這時(shí)就定義一個(gè)函數(shù)名稱以表示起功能,方便閱讀,而通過參數(shù)列表的不同來區(qū)分多個(gè)同名函數(shù)。

  重載范例:

  復(fù)制代碼 代碼如下:

  class FunctionOverload

  {

  public static void main(String[] args)

  {

  add(4,5);

  add(4,5,6);

  print99();

  }

  public static void print99(int num)

  {

  for(int x=1; x<=num; x++)

  {

  for(int y=1; y<=x; y++)

  {

  System.out.print(y+"*"+x+"="+y*x+"t");

  }

  System.out.println();

  }

  }

  //打印99乘法表

  public static void print99()

  {

  print99(9);

  }

  //定義一個(gè)加法運(yùn)算,獲取兩個(gè)整數(shù)的和。

  public static int add(int x,int y)

  {

  return x+y;

  }

  //定義一個(gè)加法,獲取三個(gè)整數(shù)的和。

  public static int add(int x,int y,int z)

  {

  return add(x,y)+z;

  }

  }

  練習(xí):區(qū)分是否是重載

  代碼如下:

  void show(int a,char b,double c){}

  下面的a,b,c,d,e,f與上述一句的區(qū)別:

  a.void show(int x,char y,double z){}//沒有,因?yàn)楹驮瘮?shù)一樣。

  b.int show(int a,double c,char b){}//重載,因?yàn)閰?shù)類型不同。注意:重載和返回值類型沒關(guān)系。

  c.void show(int a,double c,char b){}//重載,因?yàn)閰?shù)類型不同。注意:重載和返回值類型沒關(guān)系。

  d.boolean show(int c,char b){}//重載了,因?yàn)閰?shù)個(gè)數(shù)不同。

  e.void show(double c){}//重載了,因?yàn)閰?shù)個(gè)數(shù)不同。

  f.double show(int x,char y,double z){}//沒有,這個(gè)函數(shù)不可以和給定函數(shù)同時(shí)存在與一個(gè)類中。

  如何區(qū)分重載:當(dāng)函數(shù)同名時(shí),只看參數(shù)列表。和返回值類型沒關(guān)系。

【Java語(yǔ)法基礎(chǔ)中函數(shù)的使用說明】相關(guān)文章:

Java語(yǔ)法基礎(chǔ)for語(yǔ)句練習(xí)09-21

Java基礎(chǔ)語(yǔ)法知識(shí)點(diǎn)07-31

Java語(yǔ)法基礎(chǔ)之for語(yǔ)句練習(xí)04-28

Java基礎(chǔ)語(yǔ)法面試題10-28

JAVA語(yǔ)法基礎(chǔ)之變量和基本數(shù)據(jù)類型10-28

java構(gòu)造函數(shù)調(diào)用技巧10-26

java調(diào)用c函數(shù)的實(shí)例09-16

java教程之Java編程基礎(chǔ)09-12

Java基礎(chǔ)學(xué)習(xí)步驟09-17

Java基礎(chǔ)知識(shí)精選09-07