ブログ友達の皆さん、ようこそ。この記事では、40 を超える OOPS 面接の質問と回答を例とともに紹介します。この質問は、プログラミング面接中に面接官が OOP に関連する質問をするときに役立ちます。ご興味がございましたら、今後ともご注目ください。コンテンツが気に入っていただけましたら、開発者の友人と共有してください。
完全な形がオブジェクト指向プログラミングである OOP は、プログラミングにとって非常に高度なトピックであり、モジュール性を強制するカプセル化、継承パスなどの多くの機能を備えていますが、概念は OOP 継承、カプセル化、ポリモーフィズムの 4 つだけです。データの抽象化とそのすべては基本であり、面接中に学ぶことが非常に重要です。
これらについて知らなければ、面接に落ちてしまう可能性があり、Microsoft、Google、Adobe、その他の大手テクノロジー企業など、夢のような企業で働く機会を得られなくなる可能性があります。 .
また、面接に臨む前にオブジェクト指向プログラミングの準備をしておくことをお勧めします。面接では、面接官が「OOP とは何ですか?」などのオブジェクト指向プログラミングに関連した質問をされる可能性が非常に高いためです。なぜ必要なのですか?など
そこで、あなたのためだけに、面接中に聞かれる可能性の高い質問を 40 個以上見つけました。そして最も素晴らしいのは、質問とともに面接中に言える答えも提供していることです。あなたのインタビュー。
Java のコンストラクターは、オブジェクトが初期化されるときに使用される特別なメソッドですが、その主な目的は、クラス内のオブジェクトのデータ フィールドを使用前に初期化することです。 Java メソッドとは異なり、コンストラクターはクラスと同じ名前を持ち、戻り値の型を持ちません。
例 -
パブリック クラス MyClass{
//コンストラクター
MyClass(){
システム。 out.println("Oracle.com");
}
public static void main(String args[]){
MyClass obj = new MyClass();
//
}
}
OOP 以外のプログラミング パラダイムは主に 4 つあります -
SOP の完全な形式は構造プログラミングです。これは、コンピュータ プログラムの明瞭さ、品質、開発時間の向上を目的としたプログラミング パラダイムであり、それらを向上させるために、選択 (if/then/else) と繰り返し (while および for )、ブロックなどを使用できるため、OOP よりも学習が容易になり、作成に必要な時間が短くなります。簡単に言えば、必要に応じてプログラムに論理構造を提供することを目的としています。
面接中に OOP と SOP の間にはいくつかの違いがあります。両者の 5 つの違いを学ぶと良いでしょう -
両者の違いは、コンパイル時ポリモーフィズムは静的バインディングを通じて実現でき、実行時ポリモーフィズムは動的バインディングを通じて実現できることです。それらのもう 1 つの違いは、コンパイル時にはポリモーフィズムの継承が関与するのに対し、実行時にはポリモーフィズムの継承が関与しないことです。
sumlogic.com によると、これは、ユーザーが特定のオブジェクトのすべての変数の状態値を取得できないように、オブジェクトの一部のコンポーネントへの直接アクセスを制限する方法です。
(OOP) オブジェクト指向プログラミングでは、その型の新しく作成されたオブジェクトを初期化するクラスまたは構造体の特別なメソッドです。したがって、それはコンストラクターと呼ばれます。
TechTarget の Web サイトによると、特定の種類のオブジェクトのメソッドと変数のテンプレート定義が記載されています。したがって、変数ではなく実際の値を持ち、そのためオブジェクトはクラスの特定のインスタンスであり、それが真です。
抽象化には、アプリの詳細を外部から隠すことが含まれます。簡単に言えば、名前、コード、画像などのアプリの詳細を他の人から隠します。
ポリモーフィズムは、オブジェクト指向プログラミングの世界において重要なトピックです。簡単に言うと、様々な形で何度も発生する状況です。
おっと、非常に簡単な方法で問題を解決し、ユーザーや政府をさまざまな方法で支援するため、現時点では非常に人気があります。
あるクラスが別のクラスのプロパティを使用することは、継承として知られており、最初のクラスが別のオブジェクトに基づいているため、同様の実装がある場合に発生します。
構造化プログラミングはモジュラー プログラミングとも呼ばれ、プログラムの作成が容易になり、プロジェクトの開発に読みやすく再利用可能なコードを使用するのに役立ちます。
これらは、プログラムを設計するときに最初に思い浮かぶものであり、オブジェクトと呼ばれるプロセスから最終的に派生するコードの単位でもあります。
はい、オブジェクトがなければクラスからオブジェクトを作成できません。
Java は最も重要なオブジェクト指向プログラミング言語です。
OOP の意味はオブジェクト指向プログラミングです。複数の言語に対応しており、作業が簡単になります。
クラスはメモリ空間を占有しません。
OOP の機能は継承です。
OOP の必要性は、いくら強調しても強調しすぎることはありません。それは、OOP がコードを整理して再利用性を最大限に高める方法であるため、非常に重要です。これにより作業が容易になり、Java、C、C などの言語を使用してアプリやゲームを作成するなど、多くの分野で言語の形で使用され、ユーザーと対話できるオブジェクトを含めることができます。
C では、ポリモーフィズムは、同じ機関が異なる状況に対して別の方法で動作することを意味します。
Brilliant.org によると、クラスはオブジェクトを作成するための青写真です。これは状態と動作の実装に初期値を提供します。また、非常に重要な主題であるにもかかわらず、知っておくべき OOP の非常に基本的な事項でもあります。
ques10.com によると、構造体は同じまたは異なるデータ型の変数のコレクションにすぎません。これにはクラス、オブジェクトなどが含まれます。
オブジェクト指向プログラミングには 3 つの主な特徴があります。それはポリモーフィズム、カプセル化、継承です。
この質問については、主な違いが 2 つ挙げられます -
Java、Python、C は、OOP の概念に基づいて動作する言語の一部です。
この場合、インスタンスを作成せずに静的メソッドを呼び出すことができます。したがって、これによれば、はい、それができます。
OOPS には 3 つのタイプの継承があります -
多重継承は、オブジェクトまたはクラスが複数の親オブジェクトまたは親クラスから特性を受け取ることを可能にする一部のオブジェクト指向プログラミング言語の機能ですが、多重レベル継承では複数のクラスが参加します。
サブクラスの元となった OOP のクラスはスーパークラスと呼ばれます。
他のクラスから派生したクラスであり、サブクラスと呼ばれます。
この質問に対して、3 つの欠点 -
について言えます。いいえ、完全に純粋な OOP 言語ではありません。ただし、OOP 言語の 4 つの柱すべてをサポートしています。
メソッドのオーバーロードは、オブジェクト指向プログラミングにおけるポリモーフィズムの一種です。
サブクラスまたは子クラスが、そのスーパークラスまたは親クラスの 1 つがすでに提供しているメソッドの特定の実装を提供できるようにする言語機能。
面接官がこの質問をした場合、3 つの基本的な違いを言うことができます -
抽象クラスは、少なくとも 1 つの抽象メソッドを含むクラスのタイプです。
Java の抽象クラスは 2 つに分類できます -
抽象クラスを実現するには、覚えておくべき点がいくつかあります -
静的ポリモーフィズムはコンパイル時にメソッドを呼び出すための情報を収集するポリモーフィズムの一種であり、動的ポリモーフィズムは実行時にメソッドを呼び出すための情報を収集するポリモーフィズムの一種です。
アクセス指定子は、クラスの属性とメソッドにアクセスする方法を定義します。
ユタ大学によると、インターフェースとは、コンピューターがオブジェクトに特定の特性を課すことを可能にするプログラミング構造/構文です。 (クラス)。
この投稿では、面接官が面接で尋ねる可能性のあるすべての重要な質問とその答えを説明しました。私たちは、回答が短く、的を射たものになるように努めてきました。したがって、私たちのコンテンツを気に入っていただき、私たちの取り組みに感謝していただけましたら、ぜひ私たちの投稿を開発者の友人と共有してください。
以上がOOPS 面接のトップ質問と 5 つの回答の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。