java 介面不是不能new嗎?- java:使用匿名類直接new介面
阿新 • • 發佈:2018-12-29
java 介面不是不能new嗎?
- 這叫匿名內部類,你後面的大括號實際上就是一個Runnable的實現類了 只不過這個類名和介面名稱一樣,所以是匿名的,別人地方也用不了
- 這種寫法相當於先建立了一個匿名類,實現了這個介面,然後new一個這個匿名類的物件
所以可以使用. - 這個是等於建立了一個匿名內部類,這個類實現了該介面,並實現了該介面的run方法。
與你定義一個類實現這個介面是等效的。
不過這個就是沒有類名。而且無法在其他地方new出物件。 - java:使用匿名類直接new介面
- java中的匿名類有一個倍兒神奇的用法,見下面程式碼示例:package com.dtqn.action; public interface interFace { void writeClass();}實現類package com.dtqn.action; public class Program { public static void main(String[] args) { // TODO Auto-generated method stub interFace say = new interFace(){ @Override public void writeClass() { // TODO Auto-generated method stub } }; } }new介面用於簡化程式碼用。。。。。。。。。