日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java支持接口吗_java – 支持专用接口方法

發布時間:2024/10/6 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java支持接口吗_java – 支持专用接口方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

此支持允許接口的非抽象方法在它們之間共享代碼.私有方法可以是靜態的或實例的.

接口的私有方法可以是抽象的還是默認的?

我可以問一個例子,“私有靜態接口方法”在代碼方面是否有用?

解決方法:

不,接口中的私有方法應該被設計用于在接口實現內部的一段代碼中進行分組.由于這些屬于實現(由主體組成)而不是聲明,因此在定義時既不能是默認也不是抽象.

私有方法是靜態方法或使用private關鍵字聲明的非默認實例方法.您不能將default方法聲明為私有方法,因為默認方法可以從實現其聲明接口的類中調用.

私有靜態方法在定義其實現時從接口的靜態方法中抽象出一段共同的代碼是很有用的.

接口中的私有靜態方法的示例可以如下.考慮一個對象,StackOverflow上的Question.java定義為:

class Question {

int votes;

long created;

}

和一個建議按功能分類的界面,如StackOverflowTag所列問題所示:

public interface StackOverflowTag {

static List sortByNewest(List questions) {

return sortBy("NEWEST", questions);

}

static List sortByVotes(List questions) {

return sortBy("VOTE", questions);

}

//... other sortBy methods

private static List sortBy(String sortByType, List questions) {

if (sortByType.equals("VOTE")) {

// sort by votes

}

if (sortByType.equals("NEWEST")) {

// sort using the created timestamp

}

return questions;

}

}

這里接口的私有靜態方法sortBy在內部實現基于sortOrderType的排序,該接口通過接口的兩個公共靜態方法共享實現,StackOverflowTagConsumer可以進一步使用這些方法可以簡單地訪問這些接口靜態方法:

public class StackOverFlowTagConsumer {

public static void main(String[] args) {

List currentQuestions = new ArrayList<>();

// if some action to sort by votes

displaySortedByVotes(currentQuestions);

// if another action to sort by newest

displaySortedByNewest(currentQuestions);

}

private static void displaySortedByVotes(List currentQuestions) {

System.out.println(StackOverflowTag.sortByVotes(currentQuestions));

}

private static void displaySortedByNewest(List currentQuestions) {

System.out.println(StackOverflowTag.sortByNewest(currentQuestions));

}

}

標簽:java,interface,java-9,private-methods

來源: https://codeday.me/bug/20191002/1841171.html

總結

以上是生活随笔為你收集整理的java支持接口吗_java – 支持专用接口方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。