Top 50 OOPs interviewspørgsmål og svar (2025)

Her er OOPs interviewspørgsmål og svar til både friskere og erfarne kandidater til at få deres drømmejob.

1) Hvad er OOPS?

OOPS er forkortet som Object Oriented Programming system, hvor programmer betragtes som en samling af objekter. Hvert objekt er intet andet end en instans af en klasse.


2) Skrive grundlæggende begreber om OOPS?

Følgende er begreberne for OOPS:

  1. abstraktion
  2. Indkapsling
  3. Arv
  4. polymorfi

Gratis PDF-download: OOPs interviewspørgsmål og -svar


3) Hvad er en klasse?

En klasse er simpelthen en repræsentation af en type objekt. Det er planen/planen/skabelonen, der beskriver detaljerne i et objekt.


4) Hvad er et objekt?

Et objekt er en instans af en klasse. Det har sin egen tilstand, adfærd og identitet.


5) Hvad er indkapsling?

Indkapsling er en egenskab ved et objekt, og den indeholder alle data, som er skjult. Disse skjulte data kan begrænses til medlemmerne af den pågældende klasse.

Niveauer er Offentlige, Beskyttede, Private, Interne og Beskyttede Interne.


6) Hvad er polymorfi?

Polymorfi er intet andet end at tildele adfærd eller værdi i en underklasse til noget, der allerede var erklæret i hovedklassen. Simpelthen antager polymorfi mere end én form.

OOPs interviewspørgsmål
OOPs interviewspørgsmål

7) Hvad er arv?

Arv er et begreb, hvor en klasse deler den struktur og adfærd, der er defineret i en anden klasse. Hvis arv anvendt på en klasse kaldes Single Inheritance, og hvis det afhænger af flere klasser, så kaldes det multipel arv.


8) Hvad er manipulatorer?

Manipulatorer er de funktioner, der kan bruges i forbindelse med indsættelses- (<<) og udtrækningsoperatorer (>>) på et objekt. Eksempler er endl og setw.


9) Forklar begrebet konstruktør

En konstruktør er en metode, der bruges til at initialisere et objekts tilstand, og den bliver påkaldt på tidspunktet for objektets oprettelse. Regler for konstruktør er:

  • Konstruktørnavn skal være det samme som et klassenavn.
  • En konstruktør må ikke have nogen returtype.

10) Definer Destructor?

En destructor er en metode, som automatisk kaldes, når objektet er lavet af omfang eller ødelagt. Destruktorens navn er også det samme som klassenavnet, men med tilde-symbolet før navnet.


11) Hvad er en inline-funktion?

En inline-funktion er en teknik, der bruges af kompilatorerne og instruerer at indsætte hele kroppen af ​​funktionen, uanset hvor denne funktion bruges i programmets kildekode.


12) Hvad er en virtuel funktion?

En virtuel funktion er en medlemsfunktion af en klasse, og dens funktionalitet kan tilsidesættes i dens afledte klasse. Denne funktion kan implementeres ved at bruge et nøgleord kaldet virtuel, og det kan gives under funktionsdeklaration.

En virtuel funktion kan erklæres ved hjælp af en token(virtuel) i C++. Det kan opnås i C/Python Language ved at bruge funktionspointere eller pointere til at fungere.


13) Hvad er en vennefunktion?

En vennefunktion er en ven af ​​en klasse, der har tilladelse til at få adgang til offentlige, private eller beskyttede data i den samme klasse. Hvis funktionen er defineret udenfor, kan klassen ikke få adgang til sådanne oplysninger.

En ven kan erklæres hvor som helst i klasseerklæringen, og den kan ikke påvirkes af adgangskontrolnøgleord som privat, offentlig eller beskyttet.


14) Hvad er funktionsoverbelastning?

Funktionsoverbelastning er en almindelig funktion, men den er tildelt flere parametre. Det giver mulighed for at oprette flere metoder med samme navn, som adskiller sig fra hinanden ved typen af ​​input og output af funktionen.

Eksempel

void add(int& a, int& b);

void add(double& a, double& b);

void add(struct bob& a, struct bob& b);


15) Hvad er operatøroverbelastning?

Operatøroverbelastning er en funktion, hvor forskellige operatører anvendes og afhænger af argumenterne. Operator,-,* kan bruges til at passere gennem funktionen, og den har sin egen forrang til at udføre


16) Hvad er en abstrakt klasse?

En abstrakt klasse er en klasse, der ikke kan instansieres. Oprettelse af et objekt er ikke muligt med en abstrakt klasse, men det kan nedarves. En abstrakt klasse kan kun indeholde en abstrakt metode. Java tillader kun abstrakt metode i abstrakt klasse, mens andre sprog også tillader ikke-abstrakt metode.


17) Hvad er en ternær operator?

Den ternære operator siges at være en operator, der tager tre argumenter. Argumenter og resultater er af forskellige datatyper, og det afhænger af funktionen. Den ternære operator kaldes også en betinget operator.


18) Hvad er brugen af ​​færdiggørelsesmetoden?

Finalize-metoden hjælper med at udføre oprydningsoperationer på de ressourcer, der ikke bruges i øjeblikket. Finalize-metoden er beskyttet, og den er kun tilgængelig via denne klasse eller af en afledt klasse.


19) Hvad er de forskellige typer argumenter?

En parameter er en variabel, der bruges under erklæringen af ​​funktionen eller subrutinen, og argumenter sendes til funktionslegemet, og den skal matche med den definerede parameter. Der er to typer argumenter.

  • Kald efter værdi – Værdi, der er overført, bliver kun ændret i funktionen, og den returnerer den samme værdi, uanset hvad den overføres til funktionen.
  • Call by Reference – Værdi passeret vil blive ændret både i og uden for funktionerne, og det returnerer den samme eller en anden værdi.

20) Hvad er supersøgeordet?

Super nøgleordet bruges til at påkalde den tilsidesatte metode, som tilsidesætter en af ​​dens superklasse metoder. Dette nøgleord giver adgang til tilsidesatte metoder og også adgang til skjulte medlemmer af superklassen.

Den viderestiller også et opkald fra en konstruktør til en konstruktør i superklassen.


21) Hvad er metodeoverordnet?

Metodetilsidesættelse er en funktion, der tillader en underklasse at levere implementeringen af ​​en metode, der tilsidesætter i hovedklassen. Det vil tilsidesætte implementeringen i superklassen ved at give det samme metodenavn, samme parameter og samme returtype.


22) Hvad er en grænseflade?

En grænseflade er en samling af en abstrakt metode. Hvis klassen implementerer en grænseflade, arver den derved alle en grænseflades abstrakte metoder.

Java bruger Interface til at implementere flere arv.


23) Hvad er undtagelseshåndtering?

En undtagelse er en hændelse, der opstår under udførelsen af ​​et program. Undtagelser kan være af enhver type - Runtime undtagelse, Fejl undtagelser. Disse undtagelser håndteres tilstrækkeligt gennem undtagelseshåndteringsmekanismer som try, catch og throw nøgleord.


24) Hvad er tokens?

En compiler genkender et token, og det kan ikke opdeles i komponentelementer. Nøgleord, identifikatorer, konstanter, strengliteraler og operatorer er eksempler på tokens.

Selv tegnsætningstegn betragtes også som tokens. Eksempel: parenteser, kommaer, klammeparenteser og parenteser.


25) Hvad er hovedforskellen mellem overbelastning og tilsidesættelse?

Overbelastning er statisk binding, mens tilsidesættelse er dynamisk binding. Overbelastning er intet andet end den samme metode med forskellige argumenter, og den kan måske ikke returnere den samme værdi i den samme klasse selv.

Tilsidesættelse er de samme metodenavne med de samme argumenter og returtyper knyttet til klassen og dens underordnede klasse.


26) Hvad er hovedforskellen mellem en klasse og et objekt?

Et objekt er en instans af en klasse. Objekter indeholder flere oplysninger, men klasser har ingen information. Definition af egenskaber og funktioner kan udføres i klassen og kan bruges af objektet.

En klasse kan have underklasser, mens et objekt ikke har underobjekter.


27) Hvad er en abstraktion?

Abstraktion er en nyttig funktion i OOPS, og den viser kun de nødvendige detaljer til klienten af ​​et objekt. Det betyder, at det kun viser nødvendige detaljer for et objekt, ikke de indre konstruktører af et objekt. Eksempel – Når du vil tænde for fjernsynet, er det ikke nødvendigt at kende det indre kredsløb/mekanisme, der skal til for at tænde fjernsynet. Hvad end der kræves for at tænde TV vil blive vist ved hjælp af en abstrakt klasse.


28) Hvad er adgangsmodifikatorerne?

Adgangsmodifikatorer bestemmer omfanget af metoden eller variablerne, der kan tilgås fra andre forskellige objekter eller klasser. Der er fem typer adgangsmodifikatorer, og de er som følger:

  • Privat
  • Beskyttet
  • offentlige
  • Ven
  • Beskyttet Ven

29) Hvad er forseglede modifikatorer?

Forseglede modifikatorer er adgangsmodifikatorer, hvor metoderne ikke kan arve det. Forseglede modifikatorer kan også anvendes på egenskaber, hændelser og metoder. Denne modifikator kan ikke bruges til statiske medlemmer.


30) Hvordan kan vi kalde basismetoden uden at oprette en instans?

Ja, det er muligt at kalde basismetoden uden at oprette en instans. Og den metode burde være "Statisk metode."

Arv fra den klasse.-Brug basenøgleord fra en afledt klasse.


31) Hvad er forskellen mellem ny og tilsidesættelse?

Den nye modifikator instruerer compileren til at bruge den nye implementering i stedet for basisklassefunktionen. Hvorimod Override modifier hjælper med at tilsidesætte basisklassefunktionen.


32) Hvad er de forskellige typer konstruktører?

Der er tre typer konstruktører:

– Standardkonstruktør – Uden parametre.

– Parametrisk konstruktør – Med parametre. Opret en ny instans af en klasse og send også argumenter samtidigt.

– Kopikonstruktør – Som opretter et nyt objekt som en kopi af et eksisterende objekt.


33) Hvad er tidlig og sen binding?

Tidlig binding refererer til tildelingen af ​​værdier til variabler under designtiden, hvorimod sen binding refererer til tildelingen af ​​værdier til variabler under kørselstiden.


34) Hvad er 'denne' pointer?

DENNE pointer henviser til det aktuelle objekt i en klasse. DETTE nøgleord bruges som en pointer, der skelner mellem det aktuelle objekt med det globale objekt. Det refererer til det aktuelle objekt.


35) Hvad er forskellen mellem struktur og en klasse?

Standardadgangstypen for en struktur er offentlig, men klasseadgangstypen er privat. En struktur bruges til at gruppere data, hvorimod en klasse kan bruges til at gruppere data og metoder. Strukturer bruges udelukkende til data, og det kræver ikke streng validering, men klasser bruges til at indkapsle og iboende data, hvilket kræver streng validering.


36) Hvad er standardadgangsmodifikatoren i en klasse?

Standardadgangsmodifikator for en klasse er Intern, og standardadgangsmodifikator for et klassemedlem er Privat.


37) Hvad er en ren virtuel funktion?

En ren virtuel funktion er en funktion, som kan tilsidesættes i den afledte klasse, men som ikke kan defineres. En virtuel funktion kan erklæres som ren ved at bruge operatoren =0.

Eksempel -

Virtual void function1() // Virtual, Not pure

Virtual void function2() = 0 //Pure virtual


38) Hvad er alle de operatører, der ikke kan overbelastes?

Følgende er de operatører, der ikke kan overbelastes -.

  1. Opløsning af omfang (::)
  2. Medlemsvalg (.)
  3. Medlemvalg gennem en markør til funktion (.*)

39) Hvad er dynamisk eller køretidspolymorfi?

Dynamisk eller kørselstidspolymorfi er også kendt som metodetilsidesættelse, hvor kald til en tilsidesat funktion løses under kørselstiden, ikke på kompileringstidspunktet. Det betyder at have to eller flere metoder med samme navn, samme signatur, men med forskellig implementering.


40) Kræver vi en parameter for konstruktører?

Nej, vi kræver ikke en parameter for konstruktører.


41) Hvad er en kopikonstruktør?

Dette er en speciel konstruktør til at skabe et nyt objekt som en kopi af et eksisterende objekt. Der vil altid kun være én kopikonstruktør, som enten kan defineres af brugeren eller systemet.


42) Hvad repræsenterer søgeordet virtuel i metodedefinitionen?

Det betyder, at vi kan tilsidesætte metoden.


43) Om statisk metode kan bruge ikke-statiske medlemmer?

Falsk.


44) Hvad er en basisklasse, underklasse og superklasse?

Basisklassen er den mest generaliserede klasse, og den siges at være en rodklasse.

En underklasse er en klasse, der arver fra en eller flere basisklasser.

Superklassen er den overordnede klasse, som en anden klasse arver fra.


45) Hvad er statisk og dynamisk binding?

Forbindelse er intet andet end tilknytningen af ​​et navn til klassen. Statisk binding er en binding, hvor navn kan associeres med klassen i kompileringstiden, og det kaldes også tidlig binding.

Dynamisk binding er en binding, hvor navn kan associeres med klassen under udførelsestiden, og det kaldes også for sen binding.


46) Hvor mange instanser kan der oprettes til en abstrakt klasse?

Der vil blive oprettet nul forekomster for en abstrakt klasse. Du kan med andre ord ikke oprette en forekomst af en abstrakt klasse.


47) Hvilket søgeord kan bruges til overbelastning?

Operatornøgleord bruges til overbelastning.


48) Hvad er standardadgangsspecifikationen i en klassedefinition?

Privat adgangsspecifikation bruges i en klassedefinition.


49) Hvilket OOPS-koncept bruges som genbrugsmekanisme?

Arv er OOPS-konceptet, der kan bruges som en genbrugsmekanisme.


50) Hvilket OOPS-koncept eksponerer kun den nødvendige information for de kaldende funktioner?

Indkapsling

Disse interviewspørgsmål vil også hjælpe i din viva(orals)

Del

79 Kommentarer

  1. Avatar Abhinav Bhardwaj siger:

    Spørgsmål nr. 16 har forkert svar.
    En abstrakt klasse kan også indeholde ikke-abstrakt metode.

    1. Avatar Manoj Kumar siger:

      Abhinav har ret..

      En abstrakt klasse kan have både abstrakte og ikke-abstrakte metoder. Minimum én abstrakt metode er obligatorisk..

      1. Tak, rettelsen er foretaget.

        1. Avatar Sahira Ashraf siger:

          Understøtter C++ 5 typer adgangsspecifikationer?

          1. Avatar Zarish Alam siger:

            Nej, jeg tror kun 3 ... private, offentlige, beskyttede. De resterende to tror jeg er til Java

          2. Avatar Ahmad Attal siger:

            Zarish Alam Modifier accessor har seks ubeskyttede konto ho ga

          3. Avatar khanzaman wazir siger:

            nej, jeg tror kun tre typer

      2. Ananth Km siger:

        Minimum én abstrakt metode er obligatorisk – Det er forkert.. Vi kan oprette en abstrakt klasse uden nogen abstrakte metoder i den, bare sørg for at den ikke er instansieret.

        1. Avatar Arun Joseph siger:

          tak dette hjælper meget

      3. Avatar Jahangir Alam siger:

        Tak Manoj kumar

      4. Læs den venligst komplet. denne betingelse gælder kun i java.

    2. bro faktisk, hvis du laver din metode som et abstrakt, så skal du lave din klasse som et abstrakt, men hvis du laver din klasse som et abstrakt, så er det ikke obligatorisk at lave metoderne som et abstrakt. tak

    3. Avatar Fraz Akhtar siger:

      kun i java abstrakt klasse har kun abstrakt metode ikke for alle

  2. Avatar UserRaven siger:

    Tak, det var meget nyttigt

  3. Avatar Edwin Escoto siger:

    hvordan ved du i #15, at værdien for a og b er henholdsvis 1.2 og 6 ??

    1. Avatar Abishek Rajagopal siger:

      det er de værdier, der overføres til det

  4. Avatar Arulprakasan siger:

    Rigtig god, hjælpsom!!! Tak karriereguru!!

  5. Avatar mohini barelikar siger:

    Takket være karriereguruen

  6. Svaret på sidste spørgsmål nr. 50 – Hvilket OOPS-koncept eksponerer kun nødvendige oplysninger for de kaldende funktioner? Abstraktion er forkert. Det burde være Encapsulation i stedet for. Dataskjul refererer til indkapsling og ikke abstraktion. Abstraktion er en måde at designe koden på.

      1. Det relaterede quizspørgsmål siger stadig Abstraktion.

          1. Avatar siddharth siger:

            Abstraktion er det rigtige svar. indkapsling er sammenslutningen af ​​data og funktioner med et objekt. Selvom indkapsling skjuler data fra resten af ​​programmet, handler spørgsmålet ikke om det.

          2. Avatar men det skal kun være abstraktion siger:

            plz ret det

  7. Avatar Soumya Pathak siger:

    tak for denne hjælp

  8. det er meget nyttigt for de grundlæggende slankere

  9. Spørgsmål nr. 4, kan du tjekke svaret én gang, tak. Føler, at sætningsdannelsen skal rettes.

  10. Avatar Vaishali siger:

    Tak, det er nyttigt

  11. Spørgsmål nr. 16
    Abstrakt klasse kan have abstrakt såvel som ikke-abstrakt metode i java. hvis du erklærer abstrakt metode, er det obligatorisk at erklære en klasse som abstrakt, men når du erklærer en klasse som abstrakt, er det ikke obligatorisk at erklære en metode som abstrakt i java.

  12. En abstrakt klasse kan kun indeholde abstrakt metode. er det ?
    hvis jeg ikke tager fejl, kan den indeholde abstrakt metode såvel som ikke abstrakt metode.

  13. Avatar Azeem Khan siger:

    Som svar på 31. spørgsmål er nyt en operatør ikke en modifikator….

    1. Avatar kevin thesiya siger:

      new er ikke en operatør.

  14. Spørgsmål nr. 36 har et forkert svar. Standardadgangsmodifikator for en klasse er intern, men ikke privat

  15. Jeg tror, ​​at svaret på spørgsmål #50 er abstraktion

    1. svar for 50 skal ifølge mig være abstraktion.

  16. Avatar Gadipe Ramya siger:

    Jeg vil have denne som PDF-fil

    1. Inbox mig eller e-mail mig

  17. Hvad er standardadgangsmodifikatoren i en klasse?
    -Korrekt Ans er offentlig. Opdater venligst.

    1. nej det er privat

    2. Standardadgangsmodifikatoren i en klasse er "Privat".

    3. svaret er korrekt, standardadgangsmodifikator er privat, og der er ikke behov for opdatering

    4. svaret er korrekt, det er kun privat.

    5. Standardadgangsmodifikator er privat i en klasse

    6. Jeg er ikke 100%, det er korrekt.

      1. Standard adgangsmodifikator for klassen er privat i c++, og den er offentlig i java

  18. Det er nemmere at forstå

  19. Abdul Waris siger:

    Tak, det var meget nyttigt, har du en rettelse
    Hvad er standardadgangsmodifikatoren i en klasse?
    -Korrekt Ans er offentlig. Opdater venligst.

  20. Virkelig fantastisk, hjælpsom
    Tak

  21. Avatar Bhanu Kant Mishra siger:

    Standardadgangsmodifikatoren for en klasse er intern.
    Standardadgangsmodifikatoren for et klassemedlem er privat.
    Ret det venligst…….

    1. Tak fordi du skrev. Det bliver gennemgået og rettet.

  22. Avatar Bhanu Kant Mishra siger:

    Hvilket OOPS-koncept udsætter kun den nødvendige information for de kaldende funktioner?
    Abstraktion er det korrekte svar…..Det viser kun den nødvendige information.
    Indkapsling Skjul de vigtige data fra slutbrugeren.

  23. Tak, det er mere nyttigt for os

  24. Avatar Kahsay m/kidan siger:

    dine noter er meget glade, men du skal forberede koder med deres løsninger. tak for dit foredrag

  25. Avatar Abhinav Kannojia siger:

    Intern for klasse og privat for klassemedlem. Så svaret er delvist rigtigt.

  26. Avatar Pranav Bilurkar siger:

    Standardadgangsmodifikator for alle topniveauklasser inklusive en normal klasse er INTERN og ikke offentlig eller privat.

  27. Mahesh Raj siger:

    Du er fantastisk sir
    Venligst sir næste Top spørgsmål om
    1. Frontend
    2. Backend
    3. Android-app 🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏 🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏♥️♥️♥️♥️ ♥️♥️♥️♥️♥️🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏

  28. 4 pilpiller af oop er signifikante, hvordan, og hvis vi udelader to af pilpillerne, hvilken effekt vil det have på oop? pls pls pls svar for enkel erklæring

  29. Avatar Inam Ullah siger:

    det er meget hjælpsom tak

  30. Det er meget nyttigt tak.

  31. Avatar Deependra Kumar siger:

    Svar på 50. spørgsmål er rigtigt, eller det burde være abstraktion ??

  32. Jeg synes, det sidste svar burde være abstraktion snarere end indkapsling

  33. Jeg synes 50 er forkert..
    det skal være abstraktion (ikke indkapsling)

    1. det burde være indkapsling, for vi gemmer detaljer for andre klasser.

  34. bare en prøveversion af XSS

  35. Avatar amitgiri siger:

    Det her testes nu

  36. Avatar Pooja Joshi siger:

    spørgsmål 16) En abstrakt klasse kan indeholde både de abstrakte og ikke-abstrakte metoder.

    1. Avatar Fraz Akhtar siger:

      en abstrakt klasse har både abstrakt og ikke abstrakt i c, python, men i java har abstrakt klasse kun abstrakt metode

  37. Avatar GAIKWAD RAJSHRI siger:

    Tak for det gode forslag til info om oop-sproget

  38. Det er meget nyttigt, tak!!

  39. Avatar Fraz Akhtar siger:

    en abstrakt klasse har både abstrakt og ikke abstrakt i c, python, men i java har abstrakt klasse kun abstrakt metode

  40. 14) Hvad er funktionsoverbelastning?
    >> Funktionsoverbelastning er en almindelig funktion, men den kan udføre forskellige opgaver

    Nej, det er forkert. Funktionen udfører nøjagtig den samme opgave. den eneste forskel er antallet eller typen af ​​parametre.

    Hvis funktionen hedder 'Tilføj', skal den tilføjes, uanset funktionssignaturen.

  41. Avatar Esther Naholo siger:

    Tillykke, det er meget nyttigt

  42. en ren funktion er nødvendig

  43. Avatar manimozhi siger:

    tak for dette spørgsmål. Det hjælper mig med at huske alle mine koncepter.

Giv en kommentar

Din e-mail adresse vil ikke blive offentliggjort. Krævede felter er markeret *