欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java中閉包簡單代碼示例

 更新時間:2018年01月10日 08:45:36   作者:Hustudent20080101  
這篇文章主要介紹了Java中閉包簡單代碼示例,具有一定借鑒價值,需要的朋友可以參考下

一、閉包的定義。

  有很多不同的人都對閉包過進行了定義,這里收集了一些。

  # 是引用了自由變量的函數。這個函數通常被定義在另一個外部函數中,并且引用了外部函數中的變量。 -- <<wikipedia>>

  # 是一個可調用的對象,它記錄了一些信息,這些信息來自于創(chuàng)建它的作用域。-- <<Java編程思想>>

  # 是一個匿名的代碼塊,可以接受參數,并返回一個返回值,也可以引用和使用在它周圍的,可見域中定義的變量。-- Groovy ['ɡru:vi]

  # 是一個表達式,它具有自由變量及邦定這些變量的上下文環(huán)境。

  # 閉包允許你將一些行為封裝,將它像一個對象一樣傳來遞去,而且它依然能夠訪問到原來第一次聲明時的上下文。

  # 是指擁有多個變量和綁定了這些變量的環(huán)境的表達式(通常是一個函數),因而這些變量也是該表達式的一部分。

  # 閉包是可以包含自由(未綁定)變量的代碼塊;這些變量不是在這個代碼塊或者任何全局上下文中定義的,而是在定義代碼塊的環(huán)境中定義。

二、閉包簡單實例:

package Test;
public class Test {
	private int data=0;
	private class Inner{
		void print()
		  {
			System.out.println(Test.this.data);
		}
	}
	Inner getInnerInstance()
	 {
		return new Inner();
	}
	/**
 * @param args
 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Test t1=new Test();
		t1.data=1;
		Test t2=new Test();
		t2.data=2;
		Inner inner1=t1.getInnerInstance();
		Inner inner2=t2.getInnerInstance();
		inner1.print();
		//1
		inner2.print();
		//2
	}
}

總結

以上就是本文關于Java中閉包簡單代碼示例的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關文章

  • Java基于IDEA實現qq郵件發(fā)送小程序

    Java基于IDEA實現qq郵件發(fā)送小程序

    這篇文章主要介紹了Java基于IDEA實現qq郵件發(fā)送小程序功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09
  • IDEA?2019.2.3破解激活教程(親測有效)

    IDEA?2019.2.3破解激活教程(親測有效)

    這篇文章主要介紹了IDEA?2019.2.3破解激活教程(親測有效),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • Spring超詳細講解IOC與解耦合

    Spring超詳細講解IOC與解耦合

    IoC就是比方說有一個類,我們想要調用類里面的方法(不是靜態(tài)方法),就要創(chuàng)建該類的對象,使用對象調用方法來實現。但對于Spring來說,Spring創(chuàng)建對象的過程,不是在代碼里面實現的,而是交給Spring來進行配置實現的
    2022-08-08
  • Java @SentinelResource全面介紹

    Java @SentinelResource全面介紹

    在實際應用過程中,我們可能需要限流的層面不僅限于接口。可能對于某個方法的調用限流,對于某個外部資源的調用限流等都希望做到控制。對此,我們需要學習使用@SentinelResource注解,靈活的定義控制資源以及如何配置控制策略
    2022-08-08
  • Spring?多數據源方法級別注解實現過程

    Spring?多數據源方法級別注解實現過程

    多數據源管理是Spring框架中非常重要的一部分,它可以提高應用程序的靈活性和可靠性,從而更好地滿足業(yè)務需求,這篇文章主要介紹了Spring?多數據源方法級別注解實現,需要的朋友可以參考下
    2023-07-07
  • SpringMVC執(zhí)行步驟、Model的使用詳解

    SpringMVC執(zhí)行步驟、Model的使用詳解

    這篇文章主要介紹了SpringMVC執(zhí)行步驟、Model的使用詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 淺談java中String的兩種賦值方式的區(qū)別

    淺談java中String的兩種賦值方式的區(qū)別

    這篇文章主要介紹了淺談java中String的兩種賦值方式的區(qū)別。簡單介紹了兩種賦值方式,然后進行了實例分析,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • Java并發(fā)編程深入理解之Synchronized的使用及底層原理詳解 下

    Java并發(fā)編程深入理解之Synchronized的使用及底層原理詳解 下

    在并發(fā)編程中存在線程安全問題,主要原因有:1.存在共享數據 2.多線程共同操作共享數據。關鍵字synchronized可以保證在同一時刻,只有一個線程可以執(zhí)行某個方法或某個代碼塊,同時synchronized可以保證一個線程的變化可見(可見性),即可以代替volatile
    2021-09-09
  • 優(yōu)化Java代碼中if-else的方案分享

    優(yōu)化Java代碼中if-else的方案分享

    代碼可讀性是衡量代碼質量的重要標準,可讀性也是可維護性、可擴展性的保證,而我們在編程時常常會發(fā)現代碼中有大量if?else語句,如何進行優(yōu)化呢,下面就來和大家詳細聊聊
    2023-05-05
  • SpringMVC常用注解載入與處理方式詳解

    SpringMVC常用注解載入與處理方式詳解

    這篇文章主要介紹了SpringMVC常用注解載入的方式和處理的方式,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-09-09

最新評論