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

java 中使用匿名類直接new接口詳解及實(shí)例代碼

 更新時(shí)間:2017年03月07日 16:45:45   作者:楊俊明  
這篇文章主要介紹了java 中使用匿名類直接new接口詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下

java:使用匿名類直接new接口

java中的匿名類有一個(gè)倍兒神奇的用法,見(jiàn)下面代碼示例:

package contract;
 
 public interface ISay {
   void sayHello();
 }

上面是一個(gè)簡(jiǎn)單的接口,下面是如何使用:

package jimmy;
import contract.ISay;
public class Program {
  public static void main(String[] args) {
    ISay say = new ISay() {     
      public void sayHello() {
        System.out.println("Hello java!");
      }
    };
  }
}

初看上去,就好象在“不提供接口實(shí)現(xiàn)的情況下,直接new了一個(gè)接口實(shí)例”,對(duì)于C#er來(lái)說(shuō),有一種盡毀三觀的趕腳。

還好這只是假象,觀察bin目錄下的class輸出,會(huì)發(fā)現(xiàn)有一個(gè)類似Program1.class的文件,如果反編譯觀察一下,發(fā)現(xiàn)原來(lái)是編譯器自動(dòng)生成一個(gè)類Program1.class的文件,如果反編譯觀察一下,發(fā)現(xiàn)原來(lái)是編譯器自動(dòng)生成一個(gè)類Program1:

package jimmy;

import contract.ISay;
import java.io.PrintStream;

class Program$1
 implements ISay
{
 public void sayHello()
 {
  System.out.println("Hello java!");
 }
}

如果有些場(chǎng)合,只需要臨時(shí)需要?jiǎng)?chuàng)建一個(gè)接口的實(shí)現(xiàn)類,上面的"技巧"可以用來(lái)簡(jiǎn)化代碼.

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • 編程語(yǔ)言榜單Java與Python并列第二!Julia下滑

    編程語(yǔ)言榜單Java與Python并列第二!Julia下滑

    日新月異的技術(shù)圈,隨著云、大數(shù)據(jù)、人工智能等主流技術(shù)的廣泛應(yīng)用,作為開(kāi)發(fā)利器的編程語(yǔ)言的最新發(fā)展趨勢(shì)也在無(wú)形中發(fā)生了變化,本文主要介紹了java、Python、Julia等語(yǔ)言在Resmonk榜單的排名
    2021-08-08
  • 簡(jiǎn)單了解Spring Cloud Alibaba相關(guān)知識(shí)

    簡(jiǎn)單了解Spring Cloud Alibaba相關(guān)知識(shí)

    這篇文章主要介紹了簡(jiǎn)單了解Spring Cloud Alibaba相關(guān)知識(shí),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Java中常見(jiàn)的語(yǔ)法糖分享

    Java中常見(jiàn)的語(yǔ)法糖分享

    Java語(yǔ)法糖是指Java編譯器在編譯Java源代碼時(shí)所做的一些特殊處理,使得Java源代碼在編譯后生成的字節(jié)碼更加簡(jiǎn)潔、易讀、易維護(hù),Java 中有許多常見(jiàn)的語(yǔ)法糖,本文給大家列舉了一些常見(jiàn)的例子,需要的朋友可以參考下
    2023-10-10
  • Java必踩的坑之方法中形參、實(shí)參傳遞

    Java必踩的坑之方法中形參、實(shí)參傳遞

    這篇文章主要給大家介紹了關(guān)于Java必踩的坑之方法中形參、實(shí)參傳遞的相關(guān)資料,以及Java 形參和實(shí)參的區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-03-03
  • 利用Java簡(jiǎn)單實(shí)現(xiàn)一個(gè)代碼行數(shù)統(tǒng)計(jì)器方法實(shí)例

    利用Java簡(jiǎn)單實(shí)現(xiàn)一個(gè)代碼行數(shù)統(tǒng)計(jì)器方法實(shí)例

    這篇文章主要給大家介紹了關(guān)于如何利用Java簡(jiǎn)單實(shí)現(xiàn)一個(gè)代碼行數(shù)統(tǒng)計(jì)器的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Java中過(guò)濾器、監(jiān)聽(tīng)器和攔截器的區(qū)別詳解

    Java中過(guò)濾器、監(jiān)聽(tīng)器和攔截器的區(qū)別詳解

    這篇文章主要介紹了Java中過(guò)濾器、監(jiān)聽(tīng)器和攔截器的區(qū)別詳解,有些朋友可能不了解過(guò)濾器、監(jiān)聽(tīng)器和攔截器的區(qū)別,本文就來(lái)詳細(xì)講一下,相信看完你會(huì)有所收獲,需要的朋友可以參考下
    2024-01-01
  • 全面了解Java中的CAS機(jī)制

    全面了解Java中的CAS機(jī)制

    下面小編就為大家?guī)?lái)一篇全面了解Java中的CAS機(jī)制。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • java實(shí)現(xiàn)撲克牌發(fā)牌器

    java實(shí)現(xiàn)撲克牌發(fā)牌器

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)撲克牌發(fā)牌器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • String類下compareTo()與compare()方法比較

    String類下compareTo()與compare()方法比較

    這篇文章主要介紹了String類下compareTo()與compare()方法比較的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • 淺談Spring中如何使用設(shè)計(jì)模式

    淺談Spring中如何使用設(shè)計(jì)模式

    這篇文章主要介紹了淺談Spring中如何使用設(shè)計(jì)模式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05

最新評(píng)論