タグ付けされた質問 「interface」

インターフェースは、コンポーネントとの相互作用の指定されたポイントを指します。インターフェイスは、ハードウェアレベルとソフトウェアレベルの両方で適用できます。---これは、Java、C#、および同様の言語での単一継承の唯一の例外である、言語要素の「インターフェース」も指します。

15
PHPのインターフェイスのポイントは何ですか?
インターフェイスを使用すると、それを実装するクラスのメソッドを定義するコードを作成できます。ただし、これらのメソッドにコードを追加することはできません。 抽象クラスを使用すると、メソッドにコードを追加するだけでなく、同じことを実行できます。 抽象クラスで同じ目標を達成できるとしたら、なぜインターフェイスの概念さえ必要なのでしょうか。 私はそれがC ++からJavaへのOO理論に関係していると言われています。これは、PHPのOOの基礎となっているものです。この概念はJavaでは有用ですが、PHPでは有用ではありませんか?これは、抽象クラスでプレースホルダがポイ捨てされないようにするための単なる方法ですか?何か不足していますか?
224 php  oop  interface  theory 


16
C#での複数の継承
多重継承は悪いので(ソースをより複雑にします)、C#はそのようなパターンを直接提供しません。しかし、この能力があると役立つ場合があります。 たとえば、インターフェイスとそのような3つのクラスを使用して、不足している多重継承パターンを実装できます。 public interface IFirst { void FirstMethod(); } public interface ISecond { void SecondMethod(); } public class First:IFirst { public void FirstMethod() { Console.WriteLine("First"); } } public class Second:ISecond { public void SecondMethod() { Console.WriteLine("Second"); } } public class FirstAndSecond: IFirst, ISecond { First first = new First(); Second …

16
Javaで特定のクラスのすべてのサブクラスをどのように見つけますか?
どのようにしてJavaで特定のクラスのすべてのサブクラス(または特定のインターフェースのすべての実装者)を見つけようとしますか?今のところ、私はこれを行う方法を持っていますが、(控えめに言っても)それは非常に非効率的です。メソッドは次のとおりです。 クラスパスに存在するすべてのクラス名のリストを取得します 各クラスをロードして、目的のクラスまたはインターフェースのサブクラスまたはインプリメンターであるかどうかをテストします。 Eclipseには、タイプ階層と呼ばれる優れた機能があり、これを非常に効率的に表示できます。どのようにしてプログラムでそれを行うのですか?

3
XはYを実装していません(…メソッドにはポインターレシーバーがあります)[終了]
休業。この質問には詳細または明確さが必要です。現在、回答を受け付けていません。 この質問を改善してみませんか?詳細を追加し、この投稿を編集して問題を明確にしてください。 4ヶ月前に閉鎖。 この質問を改善する この「XはYを実装しない(...メソッドにはポインターレシーバーがある)」というQ&Aはすでにいくつかありますが、私には、彼らはさまざまなことについて話しているようで、私の特定のケースには当てはまりません。 だから、質問を非常に具体的にする代わりに、私はそれを広く抽象的なものにしています-このエラーを引き起こす可能性のあるいくつかの異なるケースがあるようです、誰かがそれを要約できますか? つまり、問題を回避する方法、およびそれが発生した場合、可能性は何ですか?どうも。

9
Java抽象インターフェース
例を考えてみましょう(Javaでコンパイルされます) public abstract interface Interface { public void interfacing(); public abstract boolean interfacing(boolean really); } インターフェイスを抽象的に「宣言」する必要があるのはなぜですか?抽象インターフェースに適用される他のルールはありますか? 最後に:abstract時代遅れの場合、なぜJavaに含まれているのですか?抽象インターフェースの歴史はありますか?
197 java  interface  abstract 

24
インターフェイスを作成するタイミングを知るにはどうすればよいですか?
開発学習の途中で、インターフェイスについてもっと学ぶ必要があると感じています。 よく読んでいますが、なかなか理解できないようです。 私は次のような例を読みました:「基本」、「歩く」、「実行」、「GetLegs」などのIAnimalインターフェースを備えたもの-しかし、何かに取り組んだことがなく、「インターフェースを使用する必要がありますここに!" 何が欠けていますか?なぜ私が理解するのが難しいのですか?私はそれを具体的に必要としていることに気づかなかったかもしれないという事実に驚かされました。開発者という点で最高のものが足りないように感じます。もし誰かがこのような経験をしていて画期的な経験をしたなら、私はこの概念を理解する方法に関するいくつかのヒントに感謝します。ありがとうございました。

5
インターフェイスメソッドの最後の引数-要点は何ですか?
Javaではfinal、インターフェースメソッドで引数を定義することは完全に合法であり、実装クラスではそれに従わないでください。例: public interface Foo { public void foo(int bar, final int baz); } public class FooImpl implements Foo { @Override public void foo(final int bar, int baz) { ... } } 上記の例では、barとbaz反対有するfinal界面VSクラスの定義。 同様にfinal、1つのクラスメソッドが別のクラスメソッドを拡張する場合でも、拡張しabstractない場合でも、制限は適用されません。 しながら、finalクラスメソッド本体内部のいくつかの実用的な値を有する、特定の任意の点が存在するfinalインターフェイスメソッドパラメータのか?
189 java  class  interface  methods  final 

18
カスタムフォントとXMLレイアウト(Android)
AndroidでXMLファイルを使用してGUIレイアウトを定義しようとしています。私が知る限り、XMLファイルでウィジェットがカスタムフォント(assets / font /に配置したフォントなど)を使用するように指定する方法はなく、システムにインストールされたフォントしか使用できません。 Javaコードでは、一意のIDを使用して各ウィジェットのフォントを手動で変更できることを知っています。あるいは、Javaのすべてのウィジェットを反復してこの変更を行うこともできますが、これはおそらく非常に遅くなります。 他にどのようなオプションがありますか?カスタムの外観を持つウィジェットを作成するより良い方法はありますか?追加するすべての新しいウィジェットのフォントを手動で変更する必要は特にありません。


9
2つのジェネリック型を持つ1つのインターフェースを実装するJavaクラスを作成する方法は?
汎用インターフェースがあります public interface Consumer<E> { public void consume(E e); } 2つのタイプのオブジェクトを使用するクラスがあるので、次のような処理を行います。 public class TwoTypesConsumer implements Consumer<Tomato>, Consumer<Apple> { public void consume(Tomato t) { ..... } public void consume(Apple a) { ...... } } どうやらできません。 もちろん、ディスパッチを自分で実装することもできます。 public class TwoTypesConsumer implements Consumer<Object> { public void consume(Object o) { if (o instanceof Tomato) …

11
インターフェイスをC#ジェネリック型制約として使用するにはどうすればよいですか?
次の関数宣言を取得する方法はありますか? public bool Foo<T>() where T : interface; すなわち。ここで、Tはインターフェイスタイプです(where T : class、およびと同様struct)。 現在、私は解決しました: public bool Foo<T>() where T : IBase; IBaseが、すべてのカスタムインターフェイスによって継承される空のインターフェイスとして定義されている場合...理想的ではありませんが、機能するはずです...ジェネリック型をインターフェイスにする必要があると定義できないのはなぜですか? 価値Fooがあるのは、インターフェース型が必要な場所でリフレクションを行うためです。通常のパラメーターとして渡して、関数自体で必要なチェックを行うことができますが、これははるかに型保証されているように見えました(そして私はすべてのチェックがコンパイル時に行われるため、もう少しパフォーマンスが高いと仮定します)。

17
正しいメソッドを持っているよりもインターフェイスにもっとありますか
だから私がこのインターフェースを持っているとしましょう: public interface IBox { public void setSize(int size); public int getSize(); public int getArea(); //...and so on } そして私はそれを実装するクラスを持っています: public class Rectangle implements IBox { private int size; //Methods here } IBoxインターフェイスを使用したい場合、実際にはそのインスタンスを作成できません。 public static void main(String args[]) { Ibox myBox=new Ibox(); } 正しい?だから私は実際にこれをしなければならないでしょう: public static void main(String args[]) { …


10
Java 8で使用される機能インターフェースは何ですか?
私はJava 8で「機能的インターフェース」という新しい用語に出会いました。ラムダ式で作業しているときに、その使用法を1つしか見つけることができませんでした。 Java 8にはいくつかの組み込みの関数型インターフェースが用意されており、関数型インターフェースを定義したい場合は、@FunctionalInterfaceアノテーションを利用できます。これにより、インターフェイスで単一のメソッドのみを宣言できます。 例えば: @FunctionalInterface interface MathOperation { int operation(int a, int b); } ラムダ式を操作するだけでなく、Java 8でどれほど便利ですか? (ここでの質問は、私が尋ねたものとは異なります。ラムダ式を操作するときに関数型インターフェースが必要な理由を尋ねています。私の質問は、ラムダ式以外に関数型インターフェースに他の用途がある理由は何ですか。)
154 java  lambda  interface  java-8 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.