目次
インターフェースとは何ですか?
インターフェース構文: (JDK7.0)
private 戻り値型メソッド名 (仮引数リスト) {
インターフェイスの分類
定数インターフェイス:
空のインターフェイス:
関数型インターフェイスを使用します:
ホームページ Java &#&チュートリアル Java バージョン間のインターフェース構文の相違点と、抽象クラスとインターフェース間の類似点および相違点

Java バージョン間のインターフェース構文の相違点と、抽象クラスとインターフェース間の類似点および相違点

May 06, 2023 pm 02:52 PM
java

インターフェースとは何ですか?

インターフェースといえば、USB は誰もがよく知っています~
インターフェースは標準であり仕様です。
注: インターフェースが策定された後は、ユーザーと実装者の両方が標準に従う必要があります。

Java バージョン間のインターフェース構文の相違点と、抽象クラスとインターフェース間の類似点および相違点

インターフェース構文: (JDK7.0)

(1) キーワード: インターフェース
(2) 構文: インターフェース インターフェース名{}
( 3) インターフェイスがコンパイルされると、対応する .class ファイルが生成されます
(4) インターフェイスはオブジェクトを作成できませんが、インターフェイス名への参照を宣言できます;
(5) コンストラクター メソッドはありませんインターフェイス内
(6 ) インターフェイス内のすべてのプロパティは public static 定数です
(デフォルトは public static Final)
(7) インターフェイス内のすべてのメソッドは public abstract メソッドです
(デフォルトは: パブリック抽象変更)
注: インターフェース内のメソッドのデフォルトのアクセス許可は public です;
クラス内のメソッドのデフォルトのアクセス許可はデフォルトです

インターフェースの実装クラス:

構文:

class クラス名implements インターフェース名 {}

注:implementation のキーワードはimplements
(1) 実装クラスの場合抽象クラスになりたくないので、インターフェースを上書き (実装) する必要があります。 すべてのメソッド
(2) 実装クラスがインターフェース内のメソッドをオーバーライドする場合、アクセス許可は public である必要があります
Use:
(1) インタフェース型の参照には、対応する実装クラスのオブジェクトのみを格納可能 多態性アプリケーションの反映
(2) 構文:

インタフェース名参照名 = 新しい実装クラスname (実際のパラメータ);

注: インターフェイス 複数の実装クラスを定義できます

インターフェイスの継承: (非常に重要~)

インターフェイス間の関係は多重継承です。

(1) インターフェイスです。複数の親インターフェイスを同時に継承できます。

(2) 構文:

インターフェイス インターフェイス名は、親インターフェイスを拡張します。名前 1、親インターフェース名 2{}

クラスとインターフェース間の関係は複数実装です

(1) クラスは複数のインターフェースを同時に実装できます

(2) 構文:

class class Nameimplements インターフェース名 1, インターフェース名 2 {}

(3) クラスが複数のインターフェースを実装する場合、同時に、抽象クラスになりたくない場合は、すべてのインターフェイスのすべてのメソッドを実装する必要があります
(インターフェイスを実装する親インターフェイスのすべてのメソッドを含む)

クラスは複数のインターフェイスを実装できます同時にクラスを継承する

#(1) クラスが親クラスを継承し、同時に複数のインターフェイスを実装する場合、最初に継承してから実装する必要があります

(2)構文:

クラス クラス名は親クラス名を拡張し、親インターフェイス 1、親インターフェイス 2 を実装します{}

注: 最初に拡張してから

## を実装する必要があります#クラス間の存在: 単一継承----extends

クラスとインターフェース間の存在: 複数の実装--- ----implements

インターフェース間に存在: 多重継承--- ---extends

インターフェイスの影響:

1. インターフェイスはクラスとインターフェイス間の多重継承と多重実装の関係により、ポリモーフィズムをより多様かつ複雑にします。 2. 強制的な型変換の 2 つの当事者のうちの 1 つだけがインターフェイス型である場合、コンパイルは確実に成功し、実行されます。 状況は 2 つあります:

a. 変換された参照に格納されている実際のオブジェクト型がいずれかの型である場合b. 変換された参照に格納されている実際のオブジェクト型が変換される型ではない場合、コンパイルは成功しますが、実行時にエラーが報告され、エラー メッセージ:

Java.lang.ClassCastException (型変換例外)

インターフェースの構文: (JDK8.0)

(1) デフォルトのメソッド:

a. public デフォルト戻り値型メソッド名 (仮パラメータリスト) {

// メソッドの実装部分

}


b . 注: インターフェース内のメソッドはデフォルトで表されます。
c. デフォルトのメソッドのアクセス権限は public です

d. デフォルトのメソッドはオーバーライドできますが、オーバーライドされたときのアクセス修飾子は public

(2) 静的メソッド:

a. public static 戻り値型メソッド名(仮パラメータリスト) {

# b. 静的アクセス権インターフェイス内のメソッドは public

#インターフェイスの構文: (JDK9.0)—(プライベート メソッド)

(1) インターフェイスでは、9.0 以降、メソッドを次のように指定できます。 updated by private

(2) 構文:

private 戻り値型メソッド名 (仮引数リスト) {

// メソッド実装

}

(3) プライベート メソッドはインターフェイスの内部使用に使用され、通常はコードの冗長性を減らすために他のメソッドの共通ロジック部分を抽出します。

インターフェイスの分類

定数インターフェイス:

インターフェイスには属性のみがあり、メソッドはなく、アプリケーションはほとんどありません。

空のインターフェイス:

通常はマーク インターフェイスと呼ばれ、属性や抽象化はありません。インターフェイス内;
例: IO オブジェクトをシリアル化するときは

関数型インターフェイスを使用します:

インターフェイスには抽象メソッドが 1 つだけあります (静的でデフォルトでは関係ありません)。ラムダ式で広く使用されています

抽象クラスとインターフェイスの違いは何ですか? (覚えておいてください~)

Java バージョン間のインターフェース構文の相違点と、抽象クラスとインターフェース間の類似点および相違点

以上がJava バージョン間のインターフェース構文の相違点と、抽象クラスとインターフェース間の類似点および相違点の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Javaの平方根 Javaの平方根 Aug 30, 2024 pm 04:26 PM

Java の平方根のガイド。ここでは、Java で平方根がどのように機能するかを、例とそのコード実装をそれぞれ示して説明します。

Javaの完全数 Javaの完全数 Aug 30, 2024 pm 04:28 PM

Java における完全数のガイド。ここでは、定義、Java で完全数を確認する方法、コード実装の例について説明します。

Java の乱数ジェネレーター Java の乱数ジェネレーター Aug 30, 2024 pm 04:27 PM

Java の乱数ジェネレーターのガイド。ここでは、Java の関数について例を挙げて説明し、2 つの異なるジェネレーターについて例を挙げて説明します。

ジャワのウェカ ジャワのウェカ Aug 30, 2024 pm 04:28 PM

Java の Weka へのガイド。ここでは、weka java の概要、使い方、プラットフォームの種類、利点について例を交えて説明します。

Javaのアームストロング数 Javaのアームストロング数 Aug 30, 2024 pm 04:26 PM

Java のアームストロング番号に関するガイド。ここでは、Java でのアームストロング数の概要とコードの一部について説明します。

Javaのスミス番号 Javaのスミス番号 Aug 30, 2024 pm 04:28 PM

Java のスミス番号のガイド。ここでは定義、Java でスミス番号を確認する方法について説明します。コード実装の例。

Java Springのインタビューの質問 Java Springのインタビューの質問 Aug 30, 2024 pm 04:29 PM

この記事では、Java Spring の面接で最もよく聞かれる質問とその詳細な回答をまとめました。面接を突破できるように。

Java 8 Stream Foreachから休憩または戻ってきますか? Java 8 Stream Foreachから休憩または戻ってきますか? Feb 07, 2025 pm 12:09 PM

Java 8は、Stream APIを導入し、データ収集を処理する強力で表現力のある方法を提供します。ただし、ストリームを使用する際の一般的な質問は次のとおりです。 従来のループにより、早期の中断やリターンが可能になりますが、StreamのForeachメソッドはこの方法を直接サポートしていません。この記事では、理由を説明し、ストリーム処理システムに早期終了を実装するための代替方法を調査します。 さらに読み取り:JavaストリームAPIの改善 ストリームを理解してください Foreachメソッドは、ストリーム内の各要素で1つの操作を実行する端末操作です。その設計意図はです

See all articles