簡單分析Java的求值策略原理
java在定義方法時可以設(shè)置參數(shù),參數(shù)分為形參和實參,形參是指在定義函數(shù)時用于接收外部傳入數(shù)據(jù)的參數(shù),而實參是指在調(diào)用方法時主調(diào)函數(shù)向被調(diào)函數(shù)傳遞的數(shù)據(jù)參數(shù)。例如:
public class Main { public static void main(String[] args) {int a = 2;int b = 3;System.out.println(sum(a,b));//5 } private static int sum(int i1,int i2){return i1+i2; }}
其中,a,b是傳入sum方法的數(shù)據(jù)為實參,i1,i2是定義方法時接收數(shù)據(jù)的參數(shù)為形參。
求值策略實參在向形參傳遞值的時候有多種方法,即求值策略。求值策略分為嚴(yán)格求值、非嚴(yán)格求值和非確定求值。其中嚴(yán)格求值內(nèi)包含我們常見的值傳遞(傳值)、引用傳遞(傳引用)和地址傳遞(傳址)。
傳值:將實參的值復(fù)制副本后傳給形參
傳引用:將實參的引用直接傳給形參
傳址:將實參的引用復(fù)制副本后傳給形參
地址傳遞可以看成值傳遞的一種特殊情況,java的基礎(chǔ)類型傳值為值傳遞,引用類型的傳值是地址傳遞,因此可以說java中的求值策略為傳值
到此這篇關(guān)于簡單分析Java的求值策略原理的文章就介紹到這了,更多相關(guān)Java的求值策略內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 基于javaweb+jsp實現(xiàn)學(xué)生宿舍管理系統(tǒng)2. 多級聯(lián)動下拉選擇框,動態(tài)獲取下一級3. ASP.NET MVC實現(xiàn)樹形導(dǎo)航菜單4. 如何封裝一個Ajax函數(shù)5. Java 接口和抽象類的區(qū)別詳解6. Laravel Eloquent ORM高級部分解析7. IDEA 搭建maven 安裝、下載、配置的圖文教程詳解8. jsp response.sendRedirect()用法詳解9. Spring security 自定義過濾器實現(xiàn)Json參數(shù)傳遞并兼容表單參數(shù)(實例代碼)10. PHP擴(kuò)展之URL編碼、解碼及解析——URLs
