1. ホーム
  2. java

[解決済み] SwiftのプロトコルとJavaのインターフェイスを比較する

2022-04-22 08:29:22

質問

iOSのチュートリアルを見ているところです。 アップルの開発者向けページ .

と思われるのですが protocolinterface はほぼ同じ機能を持っています。

  • 両者の違いはありますか?

  • プロジェクトでの使い分けは?

更新情報

はい との違いや使い分けがまだよくわかりません。 protocolinterface . このような質問をするときは、そのトピックについて簡単な説明が欲しいですね。ドキュメントからすべてを得るのは難しいかもしれません。

どのように解決するのですか?

基本的にプロトコルは、以下を除いてはJavaのインターフェースと非常によく似ています。

  • Swift のプロトコルは、実装しなければならないプロパティ (すなわちフィールド) を指定することもできます。
  • Swift のプロトコルは、値/参照を扱うために ミューティング キーワードを使用します (プロトコルは構造体、列挙体、クラスによって実装できるため)。
  • プロトコルの組み合わせは、"Protocol Composition"を使用することでいつでも行うことができます。これは旧来の swift を置き換えたものです。 protocol<A, B> の方法でプロトコルを構成することができます。例えば、プロトコルに従わなければならない関数のパラメータを宣言する場合 NamedAged としています。
    func wishHappyBirthday(to celebrator: Named & Aged) {}

これらは、Java開発者にとってすぐにわかる違いです(少なくとも私がこれまで見てきた限りでは)。もっと詳しい情報はこちら こちら .