Java接口

接口的定義

抽象方法的集合,接口通常以interface來聲明。一個類通過繼承接口的方式,從而來繼承接口的抽象方法。

接口并不是類,編寫接口的方式和類很相似,但是他們屬于不同的概念。類描述的是對象的屬性和方法。接口則包含類要實現的方法。

除非實現接口的類是抽象類,否則該類要定義接口中的所有方法。

接口無法被實例化,但可以被實現。一個實現接口的類,必須實現接口內所描述的所有方法,否則就必須聲明為抽象類。另外在java中,接口類型可用來聲明一個變量,他們可以成為一個空指針,或者是被綁定在一個以此接口實現的對象。

 package Peculiar;public interface batter {public void pannal();public int get();}
package Peculiar;public class Matter implements batter{@Overridepublic void pannal() {// TODO Auto-generated method stubSystem.out.println("HELLO");}@Overridepublic int get() {// TODO Auto-generated method stubreturn 0;}}
接口與類的區別
接口的特性

接口中的每一個方法都是隱式抽象的,接口中的方法會被隱式的指定為public abstract (只能是public abstract,其他修飾符都會報錯)。

接口中可以含有變量,但是接口中的變量會被隱式指定為public static final(并且只能是Public,用private修飾會報編譯錯誤)。

接口中的方法是不能在接口中實現的,只能由實現接口的類來實現接口中的方法。

接口與類的相似點

一個接口可以有多個方法。

接口文件保存在.java結尾的文件中,文件名使用接口名。

接口與類的區別

接口不能實例化對象。

接口沒有構造方法。

接口的實例

接口的聲明

接口的聲明格式如下

【可見度】interface 接口名稱 【extends 其他的接口名】{

? ? ? ? //聲明變量

? ? ? ? //抽象方法

}

interface關鍵字用來聲明一個接口。

例子

public interface NameOfInterface{

? ? ? ? //任何類型final,static字段

? ? ? ? //抽象方法

}

package Peculiar;public class Matter implements batter{@Overridepublic int get() {// TODO Auto-generated method stubreturn 5;}@Overridepublic void pannal() {// TODO Auto-generated method stubSystem.out.println("dsfas");}public static void main(String args[]) {Matter matter=new Matter();matter.pannal();System.out.println(matter.get());}}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/716972.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/716972.shtml
英文地址,請注明出處:http://en.pswp.cn/news/716972.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

AcWing 4726. 尋找數字

解題思路 在這個二插搜索樹中尋找&#xff0c;4和7數量相等&#xff0c;并且大于n的最小數。 相關代碼 import java.util.*;public class Main {static String s;static List<Integer> res new ArrayList<>();static long n;static long ansLong.MAX_VALUE;publ…

遞歸實現指數型枚舉(c++題解)

題目描述 從 1~n 這 n(n<16) 個整數中隨機選取任意多個&#xff0c;輸出所有可能的選擇方案。 輸入格式 一個整數n。 輸出格式 每行一種方案。同一行內的數必須升序排列&#xff0c;相鄰兩個數用恰好1個空格隔開。對于沒有選任何數的方案&#xff0c;輸出空行。 樣例 …

python 爬蟲 app爬取之charles的使用

專欄系列:http://t.csdnimg.cn/WfCSx 前言 前面介紹的都是爬取 Web 網頁的內容。隨著移動互聯網的發展,越來越多的企業并沒有提供 Web 網頁端的服務,而是直接開發了 App,更多更全的信息都是通過 App 來展示的。那么針對 App 我們可以爬取嗎?當然可以。 App 的爬取相比 …

使用HTML5畫布(Canvas)模擬圖層(Layers)效果

使用HTML5畫布&#xff08;Canvas&#xff09;模擬圖層&#xff08;Layers&#xff09;效果 在圖形處理和計算機圖形學中&#xff0c;圖層&#xff08;Layers&#xff09;是指將圖像分成不同的可獨立編輯、組合和控制的部分的技術或概念。每個圖層都可以包含不同的圖形元素、效…

18.題目:編號760 數的計算

題目&#xff1a; ###該題主要考察遞推、遞歸 將該題看成若干個子問題 #include<bits/stdc.h> using namespace std; const int N20; int a[N];int dfs(int dep){int res1;for(int i1;i<a[dep-1]/2;i){a[dep]i;resdfs(dep1);}return res; }int main(){int n;cin>…

python并發 map函數的妙用

1.map是什么&#xff1f; map函數是Python中的一個內置函數&#xff0c;用于將一個函數應用到一個或多個可迭代對象的每個元素上&#xff0c;生成一個新的可迭代對象。它的一般形式是&#xff1a; map(function, iterable1, iterable2, ...)其中&#xff0c;function是一個函…

解決GCC連接器(lld)出現問題 relocation truncated to fit (重定向截斷)

本文大致提點這個問題&#xff0c;有哪些可行的解決方案。 這是常見 C/C 的一類連接器錯誤&#xff0c;我們需要知道它一般是怎么產生的&#xff0c;才能知道如何正確的解決它。 例如&#xff1a;&#xff08;當發生這類問題時&#xff0c;連接器通常會輸出這樣的信息&#x…

《Spring Security 簡易速速上手小冊》第8章 常見問題與解決方案(2024 最新版)

文章目錄 8.1 異常處理和日志記錄8.1.1 基礎知識詳解8.1.2 重點案例&#xff1a;統一異常處理案例 Demo拓展 8.1.3 拓展案例 1&#xff1a;日志記錄策略案例 Demo拓展 8.1.4 拓展案例 2&#xff1a;日志聚合案例 Demo拓展 8.2 多租戶安全性問題8.2.1 基礎知識詳解8.2.2 重點案例…

深入Kafka client

分區分配策略 客戶端可以自定義分區分配策略, 當然也需要考慮分區消費之后的offset提交, 是否有沖突。 消費者協調器和組協調器 a. 消費者的不同分區策略, 消費者之間的負載均衡(新消費者加入或者存量消費者退出), 需要broker做必要的協調。 b. Kafka按照消費組管理消費者, …

VUE3:省市區聯級選擇器

一、實現效果 二、代碼展示 <template><div class"page"><select v-model"property.province"><option v-for"item in provinces" :key"item">{{ item }}</option></select><select v-model&…

今日學習總結2024.3.2

最近的學習狀態比較好&#xff0c;感覺非常享受知識進入腦子的過程&#xff0c;有點上頭。 實驗室一個星期唯一一天的假期周六&#xff0c;也就是今天&#xff0c;也完全不想放假出去玩啊&#xff0c;在實驗室泡了一天。 很后悔之前膽小&#xff0c;沒有提前投簡歷找實習&…

YOLOv9有效提點|加入MobileViT 、SK 、Double Attention Networks、CoTAttention等幾十種注意力機制(五)

專欄介紹&#xff1a;YOLOv9改進系列 | 包含深度學習最新創新&#xff0c;主力高效漲點&#xff01;&#xff01;&#xff01; 一、本文介紹 本文只有代碼及注意力模塊簡介&#xff0c;YOLOv9中的添加教程&#xff1a;可以看這篇文章。 YOLOv9有效提點|加入SE、CBAM、ECA、SimA…

ETH網絡中的區塊鏈

回顧BTC網絡的區塊鏈系統 什么是區塊鏈&#xff1f;BTC網絡是如何運行的&#xff1f;BTC交易模式 - UXTO ETH網絡中的區塊鏈 ETH網絡的基石依舊是 區塊鏈。上面 什么是區塊鏈&#xff1f; 的文章依舊適用。 相比BTC網絡&#xff0c;ETH網絡的賬戶系統就相對復雜&#xff0c;所…

ZJGSU 1199 表達式計算

題目描述 在數據結構課上&#xff0c;老師給大家布置了一個表達式計算的問題 3*21*5. Its so easy!!! csw同學做了很不過癮&#xff0c;他想求解更復雜的表達式: 比如(123456)/789. 但一時之間他想不出好的辦法&#xff0c;諸位就幫幫他吧. 輸入 輸入包括多組數據, 每組測試…

實用工具:實時監控服務器CPU負載狀態并郵件通知并啟用開機自啟

作用&#xff1a;在服務器CPU高負載時發送郵件通知 目錄 一、功能代碼 二、配置開機自啟動該監控腳本 1&#xff0c;配置自啟腳本 2&#xff0c;啟動 三、功能測試 一、功能代碼 功能&#xff1a;在CPU負載超過預設置的90%閾值時就發送郵件通知&#xff01;郵件內容顯示…

【Spring連載】使用Spring Data訪問 MongoDB----對象映射之屬性轉換器

【Spring連載】使用Spring Data訪問 MongoDB----對象映射之屬性轉換器 一、聲明式值轉換器二、編程式值轉換器注冊三、MongoCustomConversions配置 雖然基于類型的轉換已經提供了影響目標存儲中某些類型的轉換和表示的方法&#xff0c;但當僅考慮特定類型的某些值或屬性進行轉換…

js中Generator函數詳解

定義&#xff1a; promise是為了解決回調地獄的難題出現的&#xff0c;那么 Generator 就是為了解決異步問題而出現的。 普通函數&#xff0c;如果調用它會立即執行完畢&#xff1b;Generator 函數&#xff0c;它可以暫停&#xff0c;不一定馬上把函數體中的所有代碼執行完畢…

Linux基本指令(下)

目錄 1. less指令 2. head與tail指令 3. find指令 示例 4. grep指令 示例 ?編輯 5. zip/unzip 打包與壓縮 示例 ?編輯 6. tar指令 7. find指令&#xff1a; -name 8. echo指令 9. 時間相關的指令 1.在顯示方面&#xff0c;使用者可以設定欲顯示的格式&#xff…

分布式ID(6):Redis實現分布式ID生成

Redis是一個高性能的鍵值數據庫,它可以用于生成分布式唯一標識符。需要注意的是Redis實現ID可以用,這也是很多公司的選擇。但是在redis服務器宕機的情況下,他也可能會出現重復生成ID的情況。 1 實現原理 利用Redis的原子操作:Redis提供了原子性的INCR和INCRBY命令,可用于…

使用python或AI自動分析數據關聯(簡介)

有一些Python庫可以幫助用戶自動發現數據集中的關聯關系。通常這類方法被稱為關聯分析或關聯規則挖掘&#xff0c;其中最著名的算法是Apriori和FP-Growth。 兩個算法 Apriori算法&#xff1a; 這是一個用于頻繁項集挖掘和關聯規則學習的經典算法。Python中的mlxtend庫提供了一…