top 30 oops interview questions
Dieses Tutorial enthält einen vollständigen Satz häufig gestellter Fragen und Antworten zu objektorientierten Programmierinterviews (OOP):
Die Softwareentwicklung hat eine mehr als 70-jährige Geschichte, in der verschiedene Sprachen wie FORTRAN, Pascal, C, C ++ erfunden wurden. Es gab eine Reihe von Anweisungen, die als Befehle an die Hardware zur Durchführung einiger grundlegender mathematischer Berechnungen dienen und prozedurale Sprachen zum Entwerfen verschiedener Softwareanwendungen erstellen.
Mit der Erfindung des Internets wurden sichere, stabile, plattformunabhängige und robuste Sprachen für die Entwicklung komplexer Anwendungen benötigt.
Objektorientierte Programmierung ist plattformunabhängig, portabel, gesichert und mit verschiedenen Konzepten wie Kapselung, Abstraktion, Vererbung und Polymorphismus ausgestattet.
Vorteile von OOPS sind Wiederverwendbarkeit, Erweiterbarkeit und Modularität, die die Produktivität verbessern, aufgrund der Modularität einfacher zu warten sind, schnellere und niedrigere Entwicklungskosten aufgrund der Wiederverwendung von Code, sichere und qualitativ hochwertige Anwendungen erzeugen.
Was du lernen wirst:
Grundlegende objektorientierte Programmierkonzepte
Objektorientierte Programmierung umfasst intellektuelle Objekte, Daten und das damit verbundene Verhalten, um Lösungen für geschäftliche Probleme zu finden. In der Programmiersprache Java wenden Entwickler Konzepte wie Abstraktion, Kapselung, Vererbung und Polymorphismus an, um Lösungen für geschäftliche Probleme zu entwerfen.
Verschiedene Konzepte wie Abstraktion das ignoriert irrelevante Details, Verkapselung das sich darauf konzentriert, welches Minimum erforderlich ist, ohne Komplexität über interne Funktionalitäten offenzulegen, Erbe um Eigenschaften der übergeordneten Klasse zu erben oder mehrere Vererbungen über eine Schnittstelle zu implementieren, und Polymorphismus Dies erweitert die Eigenschaften der Methodenüberladung (statischer Polymorphismus) und der Methodenüberschreibung (dynamischer Polymorphismus).
Am häufigsten gestellte Fragen zum OOPS-Interview
F # 1) Erklären Sie kurz, was Sie unter objektorientierter Programmierung in Java verstehen.
Antworten: OOP befasst sich mit Objekten wie realen Entitäten wie Stift, Handy, Bankkonto mit Status (Daten) und Verhalten (Methoden).
Mit Hilfe des Zugriffs wird der Zugriff der Spezifizierer auf diese Daten und Methoden gesichert. Konzepte der Kapselung und Abstraktion bieten das Ausblenden von Daten und den Zugriff auf das Wesentliche, die Vererbung und den Polymorphismus. Sie helfen dabei, Methoden und Konstruktoren wiederzuverwenden und zu überladen / zu überschreiben, und machen Anwendungen plattformunabhängig, sicher und robust mit Sprachen wie Java.
F # 2) Erklären Ist Java eine reine objektorientierte Sprache?
Antworten: Java ist keine rein objektorientierte Programmiersprache. Folgendes sind die Gründe:
- Java unterstützt und verwendet primitive Datentypen wie int, float, double, char usw.
- Primitive Datentypen werden als Variablen oder auf dem Stapel anstelle des Heaps gespeichert.
- In Java können statische Methoden im Gegensatz zu objektorientierten Konzepten ohne Verwendung eines Objekts auf statische Variablen zugreifen.
F # 3) Klasse und Objekt in Java beschreiben?
Antworten: Klasse und Objekt spielen in objektorientierten Programmiersprachen wie Java eine wesentliche Rolle.
- Klasse ist ein Prototyp oder eine Vorlage, deren Status und Verhalten von einem Objekt unterstützt und bei der Erstellung von Objekten verwendet werden.
- Das Objekt ist eine Instanz der Klasse, zum Beispiel, Der Mensch ist eine Klasse mit dem Zustand, dass er ein Wirbelsystem, Gehirn, Farbe und Größe hat und Verhaltensweisen wie canThink (), ableToSpeak () usw. aufweist.
F # 4) Was sind die Unterschiede zwischen Klasse und Objekten in Java?
Antworten: Im Folgenden sind einige wesentliche Unterschiede zwischen Klasse und Objekten in Java aufgeführt:
Klasse | Objekt |
---|---|
Beispiele aus der Praxis können a sein • Ein Rezept zur Zubereitung von Speisen. • Blaupausen für einen Automotor. | Beispiele aus der Praxis können Objekte sein • Ein nach Rezept zubereitetes Essen. • Motor gemäß Blaupausen konstruiert. |
Klasse ist eine logische Einheit | Objekt ist physische Einheit |
Klasse ist eine Vorlage, aus der ein Objekt erstellt werden kann | Objekt ist eine Instanz der Klasse |
Class ist ein Prototyp, der den Status und das Verhalten ähnlicher Objekte aufweist | Objekte sind Entitäten, die im wirklichen Leben existieren, wie z. B. Mobil-, Maus- oder intellektuelle Objekte wie Bankkonten |
Die Klasse wird mit einem Klassenschlüsselwort wie class Classname {} deklariert | Das Objekt wird über ein neues Schlüsselwort als Employee emp = new Employee () erstellt. |
Während der Klassenerstellung erfolgt keine Speicherzuweisung | Während der Objekterstellung wird dem Objekt Speicher zugewiesen |
Es gibt nur eine Einwegklasse, die mit dem Schlüsselwort class definiert wird | Die Objekterstellung kann auf viele Arten erfolgen, z. B. mithilfe des neuen Schlüsselworts, der newInstance () -Methode, der clone () - und der Factory-Methode. |
F # 5) Warum ist eine objektorientierte Programmierung erforderlich?
Antworten: OOP bietet Zugriffsspezifizierer und Funktionen zum Ausblenden von Daten für mehr Sicherheit und Kontrolle des Datenzugriffs. Eine Überladung kann durch Überladen von Funktionen und Operatoren erreicht werden. Die Wiederverwendung von Code ist möglich, da bereits erstellte Objekte in einem Programm in anderen Programmen verwendet werden können.
Datenredundanz, Codepflege, Datensicherheit und der Vorteil von Konzepten wie Kapselung, Abstraktion, Polymorphismus und Vererbung bei der objektorientierten Programmierung bieten einen Vorteil gegenüber zuvor verwendeten prozeduralen Programmiersprachen.
F # 6) Erklären Sie die Abstraktion anhand eines Echtzeitbeispiels.
Antworten: Abstraktion in der objektorientierten Programmierung bedeutet, komplexe Interna zu verbergen, aber nur wesentliche Merkmale und Verhaltensweisen in Bezug auf den Kontext aufzudecken. Im wirklichen Leben ist ein Beispiel für Abstraktion ein Online-Einkaufswagen, beispielsweise auf jeder E-Commerce-Website. Sobald Sie ein Produkt ausgewählt und eine Bestellung gebucht haben, möchten Sie Ihr Produkt nur noch rechtzeitig erhalten.
Wie Dinge passieren, interessiert Sie nicht, da es komplex und verborgen ist. Dies ist als Abstraktion bekannt. Nehmen wir am Beispiel eines Geldautomaten, die Komplexität der Interna, wie Geld von Ihrem Konto abgebucht wird, bleibt verborgen, und Sie erhalten Bargeld über ein Netzwerk. In ähnlicher Weise ist es für Autos äußerst komplex, wie Benzin den Motor zum Laufen bringt.
F # 7) Geben Sie einige Beispiele in Echtzeit und erklären Sie die Vererbung.
Antworten: Vererbung bedeutet, dass eine Klasse (Unterklasse) Eigenschaften einer anderen Klasse (Superklasse) durch Vererbung erwirbt. Nehmen Sie im wirklichen Leben ein Beispiel für die Vererbung eines normalen Fahrrads, bei dem es sich um eine Elternklasse handelt, und bei einem Sportfahrrad kann es sich um eine Kinderklasse handeln, bei der das Sportfahrrad die Eigenschaften und das Verhalten von rotierenden Rädern mit Pedalen über die Gänge eines normalen Fahrrads übernommen hat.
F # 8) Wie Polymorphismus in Java funktioniert, erklären Sie anhand von Beispielen aus der Praxis?
Antworten: Polymorphismus ist eine Fähigkeit, mehrere Formen zu haben, oder die Fähigkeit der Methode, verschiedene Dinge zu tun. Im wirklichen Leben verhält sich dieselbe Person, die unterschiedliche Aufgaben wahrnimmt, unterschiedlich. Im Büro ist er Angestellter, zu Hause ist er Vater, während oder nach dem Schulunterricht ist er Schüler, am Wochenende spielt er Cricket und spielt auf dem Spielplatz.
Wie viele verwendbare Hosts sind bei einer IP-Adresse der Klasse c mit der Standard-Subnetzmaske verfügbar?
In Java gibt es zwei Arten von Polymorphismus
- Kompilierungszeit Polymorphismus: Dies wird durch Methodenüberladung oder Bedienerüberladung erreicht.
- Laufzeitpolymorphismus: Dies wird durch Überschreiben der Methode erreicht.
F # 9) Wie viele Arten von Vererbung gibt es?
Antworten: Im Folgenden sind verschiedene Arten der Vererbung aufgeführt:
- Einzelvererbung: Eine einzelne untergeordnete Klasse erbt Merkmale der einzelnen übergeordneten Klasse.
- Mehrfachvererbung: Eine Klasse erbt Features von mehr als einer Basisklasse und wird in Java nicht unterstützt, aber die Klasse kann mehr als eine Schnittstelle implementieren.
- Mehrstufige Vererbung: Eine Klasse kann von einer abgeleiteten Klasse erben, wodurch sie zu einer Basisklasse für eine neue Klasse wird. zum Beispiel, Ein Kind erbt Verhalten von seinem Vater, und der Vater hat Eigenschaften von seinem Vater geerbt.
- Hierarchische Vererbung: Eine Klasse wird von mehreren Unterklassen geerbt.
- Hybride Vererbung: Dies ist eine Kombination aus Einzel- und Mehrfachvererbungen.
F # 10) Was ist Schnittstelle?
Antworten: Die Schnittstelle ähnelt der Klasse, in der sie Methoden und Variablen haben kann, aber ihre Methoden haben keinen Körper, sondern nur eine Signatur, die als abstrakte Methode bezeichnet wird. In der Schnittstelle deklarierte Variablen können standardmäßig öffentlich, statisch und endgültig sein. Die Schnittstelle wird in Java für Abstraktion und Mehrfachvererbungen verwendet, wobei die Klasse mehrere Schnittstellen implementieren kann.
F # 11) Können Sie die Vorteile von Abstraktion und Vererbung erklären?
Antworten: Die Abstraktion zeigt dem Benutzer nur wesentliche Details und ignoriert oder verbirgt irrelevante oder komplexe Details. Mit anderen Worten, die Datenabstraktion macht die Schnittstelle verfügbar und verbirgt Implementierungsdetails. Java führt die Abstraktion mit Hilfe von Schnittstellen und abstrakten Klassen durch. Der Vorteil der Abstraktion besteht darin, dass das Anzeigen einfach ist, indem die Komplexität der Implementierung verringert oder ausgeblendet wird.
Das Duplizieren von Code wird vermieden und die Wiederverwendbarkeit von Code erhöht. Dem Benutzer werden nur wesentliche Details offengelegt und die Sicherheit der Anwendung verbessert.
Bei der Vererbung erbt die untergeordnete Klasse die Funktionalität (das Verhalten) der übergeordneten Klasse. Wir müssen keinen Code schreiben, der einmal in die übergeordnete Klasse geschrieben wurde, um die Funktionalität in der untergeordneten Klasse erneut zu gewährleisten und so die Wiederverwendung des Codes zu vereinfachen. Der Code wird ebenfalls lesbar. Vererbung wird verwendet, wenn eine Beziehung besteht. Beispiel: Hyundai ist ein Auto ODER MS Word ist ein Software.
F # 12) Was ist der Unterschied zwischen Erweiterungen und Geräten?
Antworten: Sowohl das Extended- als auch das Implement-Schlüsselwort werden für die Vererbung verwendet, jedoch auf unterschiedliche Weise.
Die Unterschiede zwischen den Schlüsselwörtern Extends und Implements in Java werden nachfolgend erläutert:
Erweitert | Geräte |
---|---|
Eine Klasse kann eine andere Klasse erweitern (Kind, das Eltern durch Erben seiner Merkmale erweitert). Schnittstelle erben auch (mit Schlüsselwort erweitert) eine andere Schnittstelle. | Eine Klasse kann eine Schnittstelle implementieren |
Die Unterklasse, die die Superklasse erweitert, überschreibt möglicherweise nicht alle Methoden der Superklasse | Die Klasse, die die Schnittstelle implementiert, muss alle Methoden der Schnittstelle implementieren. |
Klasse kann nur eine einzelne Superklasse erweitern. | Die Klasse kann eine beliebige Anzahl von Schnittstellen implementieren. |
Die Schnittstelle kann mehrere Schnittstellen erweitern. | Die Schnittstelle kann keine andere Schnittstelle implementieren. |
Syntax: Klasse Child erweitert Klasse Parent | Syntax: Klasse Hybrid implementiert Rose |
F # 13) Was sind verschiedene Zugriffsmodifikatoren in Java?
Antworten: Zugriffsmodifikatoren in Java steuern den Zugriffsbereich der Klasse, des Konstruktors, der Variablen, der Methode oder des Datenelements. Es gibt verschiedene Arten von Zugriffsmodifikatoren:
- Standardzugriffsmodifikator ist ohne Zugriffsspezifizierer Datenelemente, Klasse und Methoden und kann innerhalb desselben Pakets aufgerufen werden.
- Modifikatoren für den privaten Zugriff sind mit dem Schlüsselwort private gekennzeichnet und nur innerhalb der Klasse und nicht einmal für Klassen aus demselben Paket zugänglich.
- Modifikatoren für geschützten Zugriff kann innerhalb desselben Pakets oder derselben Unterklassen aus verschiedenen Paketen zugänglich sein.
- Modifikatoren für den öffentlichen Zugriff sind von überall zugänglich.
F # 14) Erklären Sie den Unterschied zwischen abstrakter Klasse und Methode?
Antworten: Im Folgenden sind einige Unterschiede zwischen der abstrakten Klasse und der abstrakten Methode in Java aufgeführt:
Abstrakte Klasse | Abstrakte Methode |
---|---|
Objekt kann nicht aus der abstrakten Klasse erstellt werden. | Die abstrakte Methode hat eine Signatur, aber keinen Körper. |
Unterklasse erstellt oder erbt abstrakte Klasse, um auf Mitglieder der abstrakten Klasse zuzugreifen. | Es ist obligatorisch, abstrakte Methoden der Superklasse in ihrer Unterklasse zu überschreiben. |
Die abstrakte Klasse kann abstrakte oder nicht abstrakte Methoden enthalten. | Eine Klasse mit einer abstrakten Methode sollte zu einer abstrakten Klasse gemacht werden. |
F # 15) Was sind die Unterschiede zwischen Methode und Konstruktor?
Antworten: Im Folgenden sind die Unterschiede zwischen Konstruktoren und Methoden in Java aufgeführt:
Konstruktoren | Methoden |
---|---|
Der Name des Konstruktors sollte mit dem der Klasse übereinstimmen. | Methoden sollten nicht denselben Namen wie Klassenname haben. |
Sie werden zum Erstellen, Initialisieren und Zuweisen von Speicher zum Objekt verwendet. | Methoden werden verwendet, um bestimmte darin geschriebene Anweisungen auszuführen. |
Konstruktoren werden vom System implizit aufgerufen, wenn Objekte erstellt werden. | Methoden werden beim Aufruf aufgerufen. |
Sie werden mit einem neuen Schlüsselwort aufgerufen, während eine Instanz der Klasse (Objekt) erstellt wird. | Methoden werden während der Programmausführung aufgerufen. |
Der Konstruktor hat keinen Rückgabetyp. | Die Methode hat einen Rückgabetyp. |
Der Konstruktor kann nicht von der Unterklasse geerbt werden. | Methoden können von einer Unterklasse geerbt werden. |
F # 16) Was ist ein Konstruktor in Java?
Antworten: Der Konstruktor ist eine Methode ohne Rückgabetyp und hat den gleichen Namen wie der Klassenname. Wenn wir ein Objekt erstellen, weist ein Standardkonstruktor während der Kompilierung von Java-Code Speicher für ein Objekt zu. Konstruktoren werden zum Initialisieren von Objekten und zum Festlegen von Anfangswerten für Objektattribute verwendet.
F # 17) Wie viele Arten von Konstruktoren können in Java verwendet werden? Bitte erkläre.
Antworten: Grundsätzlich gibt es in Java drei Arten von Konstruktoren.
Diese sind:
- Standardkonstruktor: Dieser Konstruktor ist ohne Parameter und wird jedes Mal aufgerufen, wenn Sie eine Instanz einer Klasse (eines Objekts) erstellen. Wenn eine Klasse ein Employee ist, lautet die Syntax des Standardkonstruktors Employee ().
- No-Arg-Konstruktor: Wie der Name schon sagt, wird ein Konstruktor ohne Argument als Konstruktor ohne Argumente bezeichnet.
- Parametrisierter Konstruktor: Der Konstruktor mit einer Reihe von Parametern wird als parametrisierter Konstruktor bezeichnet. Sie müssen Argumente angeben, d. H. Anfangswerte in Bezug auf den Datentyp der Parameter in diesem Konstruktor.
F # 18) Warum wird in Java ein neues Schlüsselwort verwendet?
Antworten: Wenn wir eine Instanz einer Klasse erstellen, d. H. Objekte, verwenden wir das Java-Schlüsselwort Neu . Es reserviert Speicher in dem Heap-Bereich, in dem JVM Speicherplatz für ein Objekt reserviert. Intern wird auch der Standardkonstruktor aufgerufen.
Syntax:
Class_name obj = new Class_name();
F # 19) Wann verwenden Sie das Super-Keyword?
Antworten: Super ist ein Java-Schlüsselwort, mit dem übergeordnete (Basis-) Klassen identifiziert oder referenziert werden.
- Wir können super verwenden, um auf den Superklassenkonstruktor zuzugreifen und Methoden der Superklasse aufzurufen.
- Wenn Methodennamen in Superklasse und Unterklasse gleich sind, um auf Superklasse zu verweisen, wird die Super Schlüsselwort wird verwendet.
- Zugriff auf gleichnamige Datenelemente der übergeordneten Klasse, wenn sie in der übergeordneten und untergeordneten Klasse vorhanden sind.
- Super kann verwendet werden, um einen expliziten Aufruf von No-Arg- und parametrisierten Konstruktoren der übergeordneten Klasse durchzuführen.
- Der Zugriff auf die übergeordnete Klassenmethode kann mithilfe von erfolgen Super , wenn die Methode der untergeordneten Klasse überschrieben wurde.
F # 20) Wann verwenden Sie dieses Schlüsselwort?
Antworten: Dies Das Schlüsselwort in Java bezieht sich auf das aktuelle Objekt im Konstruktor oder in der Methode.
- Wenn Klassenattribute und parametrisierte Konstruktoren denselben Namen haben, Dies Schlüsselwort wird verwendet.
- Schlüsselwörter Dies Ruft den aktuellen Klassenkonstruktor, die Methode der aktuellen Klasse, das Objekt der aktuellen Klasse, das Übergeben eines Arguments im Konstruktor und den Methodenaufruf auf.
F # 21) Was ist der Unterschied zwischen Laufzeit- und Kompilierungspolymorphismus?
Antworten: Sowohl Laufzeit- als auch Kompilierungspolymorphismus sind zwei verschiedene Arten von Polymorphismus. Ihre Unterschiede werden nachfolgend erläutert:
Kompilierungszeitpolymorphismus | Laufzeitpolymorphismus |
---|---|
Der Aufruf wird von einem Compiler im Polymorphismus zur Kompilierungszeit aufgelöst. | Der Aufruf wird vom Compiler im Laufzeitpolymorphismus nicht aufgelöst. |
Es wird auch als statische Bindung und Methodenüberladung bezeichnet. | Es wird auch als dynamisches, spätes und methodisches Überschreiben bezeichnet. |
Gleichnamige Methoden mit unterschiedlichen Parametern oder Methoden mit derselben Signatur und unterschiedlichen Rückgabetypen sind Polymorphismus zur Kompilierungszeit. | Gleichnamige Methoden mit denselben Parametern oder Signaturen, die in verschiedenen Klassen zugeordnet sind, werden als Methodenüberschreibung bezeichnet. |
Dies wird durch Funktions- und Bedienerüberlastung erreicht. | Dies kann durch Zeiger und virtuelle Funktionen erreicht werden. |
Da alle Dinge zur Kompilierungszeit ausgeführt werden. Der Polymorphismus zur Kompilierungszeit ist weniger flexibel. | Da die Dinge zur Laufzeit ausgeführt werden, ist der Laufzeitpolymorphismus flexibler. |
F # 22) Welche objektorientierten Funktionen werden in Java verwendet?
Antworten: Ein Konzept zur Verwendung eines Objekts in der Programmiersprache Java profitiert von der Verwendung objektorientierter Konzepte wie Kapselung zum Zusammenbinden des Status und Verhaltens eines Objekts, sichert den Datenzugriff mit Zugriffsspezifizierern, Funktionen wie Abstraktion beim Verbergen von Informationen und Vererbung zum Erweitern des Status und Verhalten von Basisklassen gegenüber untergeordneten Klassen, Kompilierungs- und Laufzeitpolymorphismus für das Überladen von Methoden bzw. das Überschreiben von Methoden.
F # 23) Was ist Methodenüberladung?
Antworten: Wenn zwei oder mehr Methoden mit demselben Namen entweder eine unterschiedliche Anzahl von Parametern oder unterschiedliche Arten von Parametern haben, können diese Methoden unterschiedliche Rückgabetypen haben oder nicht, dann handelt es sich um überladene Methoden, und die Funktion ist das Überladen von Methoden. Das Überladen von Methoden wird auch als Polymorphismus zur Kompilierungszeit bezeichnet.
F # 24) Was ist das Überschreiben von Methoden?
Antworten: Wenn eine Methode der Unterklasse (abgeleitet, untergeordnete Klasse) denselben Namen, dieselben Parameter (Signatur) und denselben Rückgabetyp wie die Methode in ihrer Oberklasse (Basis, übergeordnete Klasse) hat, wird die Methode in der Unterklasse als überschrieben bezeichnet die Methode in der Oberklasse. Diese Funktion wird auch als Laufzeitpolymorphismus bezeichnet.
F # 25) Erklären Sie die Überladung des Konstruktors.
Antworten: Mehr als ein Konstruktor mit unterschiedlichen Parametern, so dass mit jedem Konstruktor unterschiedliche Aufgaben ausgeführt werden können, wird als Konstruktorüberladung bezeichnet. Durch das Überladen von Konstruktoren können Objekte auf verschiedene Arten erstellt werden. Verschiedene Collection-Klassen in der Java-API sind Beispiele für das Überladen von Konstruktoren.
F # 26) Welche Arten von Argumenten können in Java verwendet werden?
Antworten: Bei Java-Methoden und -Funktionen können Parameterdaten auf unterschiedliche Weise gesendet und empfangen werden. Wenn methodB () von methodA () aufgerufen wird, methodA () eine Aufruferfunktion ist und methodB () als Funktion bezeichnet wird, werden von methodA () gesendete Argumente tatsächliche Argumente und Parameter von methodB () als formale Argumente bezeichnet.
- Call By Value: Änderungen an formalen Parametern (Parameter von methodB ()) werden nicht an den Aufrufer (methodA ()) zurückgesendet. Diese Methode wird aufgerufen Aufruf nach Wert . Java unterstützt den Aufruf nach Wert.
- Call by Reference: Änderungen am formalen Parameter (Parameter von methodB ()) werden an den Aufrufer zurückgesendet (Parameter von methodB ()).
- Alle Änderungen der formalen Parameter (Parameter von methodB ()) spiegeln sich in den tatsächlichen Parametern wider (von methodA () gesendete Argumente). Dies wird als Referenzaufruf bezeichnet.
F # 27) Zwischen statischer und dynamischer Bindung unterscheiden?
Antworten: Die Unterschiede zwischen statischer und dynamischer Bindung werden in der folgenden Tabelle erläutert.
Statische Bindung | Dynamische Bindung |
---|---|
Bei der statischen Bindung in Java werden Felder und Klassen als Auflösung verwendet. | Die dynamische Bindung in Java verwendet ein Objekt zum Auflösen der Bindung. |
Das Überladen von Methoden ist ein Beispiel für statische Bindung. | Das Überschreiben von Methoden ist ein Beispiel für eine dynamische Bindung. |
Die statische Bindung wird beim Kompilieren aufgelöst. | Die dynamische Bindung wird zur Laufzeit aufgelöst. |
Methoden und Variablen, die statische Bindungen verwenden, sind private, endgültige und statische Typen. | Virtuelle Methoden verwenden dynamische Bindung. |
F # 28) Können Sie Basisklasse, Unterklasse und Oberklasse erklären?
Antwort: Basisklasse, Unterklasse und Superklasse in Java werden wie folgt erklärt:
- Basisklasse oder übergeordnete Klasse ist eine Superklasse und eine Klasse, von der eine Unterklasse oder eine untergeordnete Klasse abgeleitet ist.
- Unterklasse ist eine Klasse, die Attribute (Eigenschaften) und Methoden (Verhalten) von der Basisklasse erbt.
F # 29) Wird die Überladung von Operatoren in Java unterstützt?
Antworten: Das Überladen von Operatoren wird von Java nicht unterstützt, da:
- Dadurch muss der Interpreter mehr Anstrengungen unternehmen, um die tatsächliche Funktionalität des Operators zu verstehen, wodurch Code komplex und schwer zu kompilieren ist.
- Durch das Überladen von Operatoren werden Programme fehleranfälliger.
- Das Merkmal der Bedienerüberladung kann jedoch bei der Methodenüberladung auf einfache, klare und fehlerfreie Weise erreicht werden.
F # 30) Wann wird die Finalisierungsmethode verwendet?
Antworten: finalisieren Die Methode wird aufgerufen, kurz bevor das Objekt im Müll gesammelt wird. Diese Methode wird überschrieben, um Speicherverluste zu minimieren und Bereinigungsaktivitäten durch Entfernen von Systemressourcen durchzuführen.
Implementieren Sie die Hash-Tabelle c ++
F # 31) Erklären Sie Tokens.
Antworten: Token im Java-Programm sind die kleinsten Elemente, die der Compiler erkennt. Bezeichner, Schlüsselwörter, Literale, Operatoren und Trennzeichen sind Beispiele für Token.
Fazit
Objektorientierte Programmierkonzepte sind ein wesentlicher Bestandteil für Entwickler, Automatisierung sowie manuelle Tester, die ein Automatisierungstest-Framework zum Testen einer Anwendung oder zum Entwickeln von Anwendungen mit der Programmiersprache Java entwerfen.
Ein gründliches Verständnis aller objektorientierten Funktionen wie Klasse, Objekt, Abstraktion, Kapselung, Vererbung, Polymorphismus und die Anwendung dieser Konzepte in einer Programmiersprache wie Java ist erforderlich, um die Kundenanforderungen zu erfüllen.
Wir haben versucht, die wichtigsten objektorientierten Programmierinterviewfragen zu behandeln und entsprechende Antworten mit Beispielen gegeben.
Wir wünschen Ihnen alles Gute für Ihr bevorstehendes Interview!
Literatur-Empfehlungen
- OOP Java: Einführung in die objektorientierte Programmierung in Java
- Top 20 Java-Interviewprogramme zum Programmieren und Codieren von Interviews
- Top 50+ Core Java Interview Fragen und Antworten
- Java Interface und Abstract Class Tutorial mit Beispielen
- Kapselung in Java: Vollständiges Tutorial mit Beispielen
- Was ist Abstraktion in Java? Lernen Sie anhand von Beispielen
- OOPS-Konzepte in C #: Lernprogramm für objektorientierte Programmierkonzepte
- Python-OOPs-Konzepte (Python-Klassen, Objekte und Vererbung)