【java基礎】介面是否能有實現類?
介面是否能有實現方法
我的回答: 當然可以
java8以後就允許介面有實現方法:
- default修飾的方法
- static修飾的方法
/** * 能用lambda的情況,接口裡面只有一個未實現的方法 * 保證函式式介面@FunctionalInterface,如果有兩個方法就會報錯 */ public class LambdaDemo { @FunctionalInterface interface Age { int add(int x, int y); //可以隨便有幾個default default int add2(int x, int y){ return x + y + 2; }; //static方法也可以有方法體,可以隨便寫幾個 public static int add3(int i, int y) { return i + y; } } public static void main(String[] args) { Age age = (int x , int y)-> { return x + y; }; System.out.println("" + age.add(2,3)); System.out.println("Age" + Age.add3(3,4)); } }
可以關注我的公眾號一起學習
相關推薦
【java基礎】介面是否能有實現類?
介面是否能有實現方法 我的回答: 當然可以 java8以後就允許介面有實現方法: default修飾的方法 static修飾的方法 /** * 能用lambda的情況,接口裡面只有一個未實現的方法 * 保證函式式介面@FunctionalInterface,如果有兩個方法就會報錯 */ publi
【java基礎】collection介面中toArray()的使用方法
Collection介面中有兩種toArray()方法 Object[] toArray() Return an Array Containing all of the elements in this collection. <T> T[]
【Java基礎】包、類、介面、常量、方法、變數的命名規則
1、包(package)命名規則: 使用公司域名倒寫作為包名,如公司域名 www.weibin.com ,則包名為com.weibin.www 或com.weibin.(作用的介紹),方便識別軟體、類
【Java基礎】RTTI與反射之Java
start auth try dword star sse from tac sed 1 ; Example assembly language program -- 2 ; Author: Karllen 3 ; Date: revised 05/2014
轉載:【Java基礎】InputStream 、 InputStreamReader和BufferedReader
gen 結果 取字符 sys try eight string font buffer 來源:http://blog.csdn.net/zgljl2012/article/details/47267609 在Java中,上述三個類經常用於處理數據流,下面介紹一下三個類的
【Java基礎】Java常見的異常
java exception Java常見的異常1. java.lang.NullPointerException (空指針異常)調用了未經初始化的對象或者是不存在的對象2. java.lang.ClassNotFoundException 指定的類不存在3. java.lang.NumberForm
【Java基礎】Java基本數據類型與位運算
右移 數據 bits 類型 span 網上 height 使用 常數 1.賦值運算符 賦值使用操作符“=”。它的意思是“取右邊的值(即右值),把它復制給左邊(即左值)”。右值可以是任何 常數、變量或者表達式 (只要它能 生成
【Java基礎】Java運算符優先級
() logs 分享 body rowspan 單元 ima idt string 序列號 符號 名稱 結合性(與操作數) 目數 說明 1 . 點 從左到右
【java基礎】重寫equals()方法的同時要重寫hashCode()方法
而且 通過 才會 默認 什麽 需要 現在 ash 字段 1、 為什麽要重寫equals方法? 因為Object的equal方法默認是兩個對象的引用的比較,意思就是指向同一內存,地址則相等,否則不相等;如果你現在需要利用對象裏面字段的值來判斷是否相等,則重寫equals方法。
【Java基礎】基礎精華總結
一:java概述(快速瀏覽): 1991 年Sun公司的James Gosling等人開始開發名稱為 Oak 的語言,希望用於控制嵌入在有線電視交換盒、PDA等的微處理器; 1994年將Oak語言更名為Java; Java的三種技術架構: JAVA
【Java基礎】註解(Annotation)
Annotation,程式碼裡的特殊標記,在編譯、類載入、執行時被讀取,並執行相應的處理。 使用註解,在不改變原有邏輯的情況下,在原始檔中嵌入一些補充資訊。 Annotation提供了一種為程式元素設定元資料的方法。 Ann
【Java基礎】-多重For迴圈的兩種跳出方式
先來小段Demo,自己跑一下就能看到效果了: public static void main(String[] args) { List<String> listA = new ArrayList<String>(); List<String> lis
【Java基礎】程式碼塊,構造程式碼塊,靜態程式碼塊
程式碼塊 public class Demo { public static void main(String[] args){ { int a = 1; System.out.println(a); }
【Java基礎】static關鍵字
通過static宣告的屬性或者方法可以通過類名稱直接呼叫 static方法只能呼叫static屬性或者方法,不能呼叫非static屬性或者方法 非static方法則不受限,可以任意呼叫static宣告的屬性或者方法 注意:main方法本身就是一個static方法 示例1:static方法呼叫
【Java基礎】Java 基本資料型別
Java 的兩大資料型別: 內建資料型別 Java語言提供了八種基本型別。六種數字型別(四個整數型,兩個浮點型),一種字元型別,還有一種布林型。 byte: byte 資料型別是8位、有符號的,以二進位制補碼錶示的整數; 最小值是 -1
【Java基礎】String,StringBuffer,StringBuilder之間的區別
對於這三個類,先總體來理解一下: 對String,你建立了一個String,你能通過set方法改變它的長度length嗎?顯然是不行的! 但 StringBuffer 可以! String 字串常量 StringBuffer 字串變數(執行緒安全) StringBu
【java基礎】ConcurrentHashMap實現原理及原始碼分析
ConcurrentHashMap是Java併發包中提供的一個執行緒安全且高效的HashMap實現(若對HashMap的實現原理還不甚瞭解,可參考我的另一篇文章),ConcurrentHashMap在併發程式設計的場景中使用頻率非常之高,本文就來分析下Concurre
【Java基礎】Hashmap
hashMap實現Map介面,基於hashing原理,以鍵值對形式儲存,允許null鍵/值,非同步的集合型別; hashmap的底層儲存結構是基於陣列和連結串列的。 一、put方法 public Object put(Object key,Obj
【Java基礎】int和Integer
Java中存在8種基本資料型別:byte(8位)、short(16位)、int(32位)、long(64位)、float(32位)、double(64位)、char(16位,0x0000~0xffff)、boolean(true/false) java中不存在無符號數字型別,
【Java 基礎】15 Java 反射機制
反射 為什麼使用反射 需求:我公司定義了一組介面,然後第三方公司按照我公司的介面 實現了一套功能,然後交給我們,但是我們公司的專案已經結束,如何實現動態載入第三方公司提供的功能。 什麼是反射 反射就是把 Java 類中的各種成分對映成一個個的 Java 物件。例