函數(shù)是定義在類中的一段獨(dú)立的代碼塊,用來實(shí)現(xiàn)某個(gè)功能,函數(shù)的主要作用是為了提高代碼的復(fù)用性。那java函數(shù)調(diào)用的三種方式是什么下面來我們就來給大家講解一下java函數(shù)調(diào)用方法。
第一種: 函數(shù)立即調(diào)用執(zhí)行模式。這里面的this指向window;
function add(a, b) { console.log(this); return a + b; } add(); //this === window //true
第二種:通過構(gòu)造函數(shù)創(chuàng)建對(duì)象,然后調(diào)用自己的方法;這里的this指向?qū)ο蟊旧?也可說是函數(shù)的調(diào)用者;
<script> function fun(){ this.show=function(){ console.log(this); } } var f=new fun(); f.show();//f對(duì)象;</script>
第三種:通過構(gòu)造器調(diào)用函數(shù):this指向構(gòu)造出來的對(duì)象;
<script> function Cat(){ console.log(this); } Cat.prototype.show=function(){ console.log(this); } var t=new Cat();//cat{};//通過構(gòu)造函數(shù)創(chuàng)建的對(duì)象,相當(dāng)于直接調(diào)用函數(shù),沒有返回值的情況下,得到的是cat本身; t.show();//cat{}對(duì)象; console.log(t==this);//false; Cat.prototype.show();//show{}; Cat();//直接調(diào)用window </script>
一:主類中自定義函數(shù)
在主類中,如果想要在main函數(shù)中調(diào)用自定義的其他方法,則這個(gè)函數(shù)需要使用static關(guān)鍵字定義,否則會(huì)報(bào)錯(cuò)Cannot make a static reference to the non-static method xx from the type xx,調(diào)用的時(shí)候直接用函數(shù)名就可以了,如下:
public class create_function { public static void main(String[] args) { int s = jia(5, 4); System.out.println(s); } static int jia(int a, int b) { System.out.println("我是自定義相加函數(shù),我被調(diào)用了!!"); return a + b; } }
下面使用static關(guān)鍵字定義了一個(gè)“+”運(yùn)算的函數(shù),在main中調(diào)用時(shí),直接使用函數(shù)名,括號(hào)中加參數(shù)就可以了。輸出結(jié)果如下:
我是自定義相加函數(shù),我被調(diào)用了!! 9
二:自定義類中函數(shù)的調(diào)用
自定義類中函數(shù)的調(diào)用有兩種情況,靜態(tài)函數(shù)和非靜態(tài)函數(shù),非靜態(tài)函數(shù)的調(diào)用需要先聲明一個(gè)類實(shí)例,通過實(shí)例調(diào)用。靜態(tài)函數(shù)的調(diào)用可以通過實(shí)例,也可以直接使用類名調(diào)用(建議使用這種,要不會(huì)造成內(nèi)存空間的浪費(fèi)。),如下:
public class create_function { public static void main(String[] args) { Y y = new Y(); int s2 = y.cheng(3, 5); System.out.println(s2); int s3 = Y.chu(8, 2); System.out.println(s3); } } class Y { int cheng(int a, int b) { System.out.println("我是自定義類中的乘方法,我被調(diào)用了!"); return a * b; } static int chu(int c, int d) { System.out.println("我是自定義類中的除方法,我被調(diào)用了!"); return c / d; } }
在下面,自定義了一個(gè)Y類,cheng方法是非靜態(tài)方法,必須通過實(shí)例y調(diào)用,chu方法是靜態(tài)方法,使用類名直接調(diào)用。輸出結(jié)果如下:
我是自定義類中的乘方法,我被調(diào)用了! 15 我是自定義類中的除方法,我被調(diào)用了! 4
這就是java函數(shù)調(diào)用的三種方法,大家可以根據(jù)需求選擇一種進(jìn)行使用,java函數(shù)主要就是為了提高代碼的復(fù)用性,因此java函數(shù)的使用還是很重要的!最后大家如果想要了解更多初識(shí)java知識(shí),敬請(qǐng)關(guān)注賦能網(wǎng)。
本文鏈接:
本文章“java函數(shù)調(diào)用的三種方式是什么?java函數(shù)調(diào)用方法”已幫助 82 人
免責(zé)聲明:本信息由用戶發(fā)布,本站不承擔(dān)本信息引起的任何交易及知識(shí)產(chǎn)權(quán)侵權(quán)的法律責(zé)任!
本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓(xùn)機(jī)構(gòu)》培訓(xùn)課程》學(xué)習(xí)資訊》課程優(yōu)惠》課程開班》學(xué)校地址等機(jī)構(gòu)信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢熱線:4008-569-579