As 50 principais perguntas e respostas da entrevista sobre OOPs (2025)

Aqui estão as perguntas e respostas da entrevista OOPs para candidatos mais novos e experientes para conseguir o emprego dos sonhos.

1) O que é OOPS?

OOPS é abreviado como sistema de Programação Orientada a Objetos, no qual os programas são considerados uma coleção de objetos. Cada objeto nada mais é do que uma instância de uma classe.


2) Escreva conceitos básicos de OOPS?

A seguir estão os conceitos de OOPS:

  1. Abstração
  2. Encapsulamento
  3. Herança
  4. Polimorfismo

Download gratuito de PDF: Perguntas e respostas da entrevista OOPs


3) O que é uma aula?

Uma classe é simplesmente uma representação de um tipo de objeto. É o projeto/plano/modelo que descreve os detalhes de um objeto.


4) O que é um objeto?

Um objeto é uma instância de uma classe. Tem seu próprio estado, comportamento e identidade.


5) O que é encapsulamento?

O encapsulamento é um atributo de um objeto e contém todos os dados que estão ocultos. Esses dados ocultos podem ser restritos aos membros dessa classe.

Os níveis são Público, Protegido, Privado, Interno e Interno Protegido.


6) O que é Polimorfismo?

Polimorfismo nada mais é do que atribuir comportamento ou valor em uma subclasse a algo que já foi declarado na classe principal. Simplesmente, o polimorfismo assume mais de uma forma.

Perguntas da entrevista OOPs
Perguntas da entrevista OOPs

7) O que é herança?

Herança é um conceito onde uma classe compartilha a estrutura e o comportamento definidos em outra classe. Se a herança aplicada a uma classe é chamada de herança única e se depende de várias classes, então é chamada de herança múltipla.


8) O que são manipuladores?

Manipuladores são funções que podem ser usadas em conjunto com os operadores de inserção (<<) e extração (>>) em um objeto. Exemplos são endl e setw.


9) Explique o termo construtor

Um construtor é um método usado para inicializar o estado de um objeto e é invocado no momento da criação do objeto. As regras para o construtor são:

  • O nome do construtor deve ser igual ao nome da classe.
  • Um construtor não deve ter tipo de retorno.

10) Definir Destruidor?

Um destruidor é um método que é chamado automaticamente quando o objeto é colocado no escopo ou destruído. O nome do destruidor também é igual ao nome da classe, mas com o símbolo til antes do nome.


11) O que é uma função Inline?

Uma função embutida é uma técnica usada pelos compiladores e instrui para inserir o corpo completo da função onde quer que essa função seja usada no código-fonte do programa.


12) O que é uma função virtual?

Uma função virtual é uma função membro de uma classe e sua funcionalidade pode ser substituída em sua classe derivada. Esta função pode ser implementada usando uma palavra-chave chamada virtual e pode ser fornecida durante a declaração da função.

Uma função virtual pode ser declarada usando um token (virtual) em C++. Isso pode ser alcançado na linguagem C/Python usando ponteiros de função ou ponteiros para função.


13) O que é uma função de amigo?

Uma função amiga é amiga de uma classe que tem permissão para acessar dados públicos, privados ou protegidos nessa mesma classe. Se a função for definida fora da classe não será possível acessar tais informações.

Um amigo pode ser declarado em qualquer lugar na declaração da classe e não pode ser afetado por palavras-chave de controle de acesso como private, public ou protected.


14) O que é sobrecarga de funções?

A sobrecarga de função é uma função regular, mas é atribuída com vários parâmetros. Permite a criação de vários métodos com o mesmo nome que se diferenciam pelo tipo de entrada e saída da função.

Exemplo

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

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

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


15) O que é sobrecarga do operador?

A sobrecarga de operadores é uma função onde diferentes operadores são aplicados e depende dos argumentos. Operador,-,* pode ser usado para passar pela função e tem sua própria precedência para execução


16) O que é uma classe abstrata?

Uma classe abstrata é uma classe que não pode ser instanciada. A criação de um objeto não é possível com uma classe abstrata, mas pode ser herdada. Uma classe abstrata pode conter apenas um método abstrato. Java permite apenas métodos abstratos em classes abstratas, enquanto outras linguagens também permitem métodos não abstratos.


17) O que é um operador ternário?

Diz-se que o operador ternário é um operador que recebe três argumentos. Argumentos e resultados são de tipos de dados diferentes e dependem da função. O operador ternário também é chamado de operador condicional.


18) Qual é a utilidade do método finalize?

O método Finalize ajuda a realizar operações de limpeza nos recursos que não são usados ​​​​atualmente. O método Finalize é protegido e só pode ser acessado por meio desta classe ou por uma classe derivada.


19) Quais são os diferentes tipos de argumentos?

Um parâmetro é uma variável usada durante a declaração da função ou sub-rotina, e os argumentos são passados ​​para o corpo da função e devem corresponder ao parâmetro definido. Existem dois tipos de argumentos.

  • Chamada por Valor – O valor passado será modificado apenas dentro da função e retorna o mesmo valor independentemente do que for passado para a função.
  • Chamada por referência – O valor passado será modificado dentro e fora das funções e retornará um valor igual ou diferente.

20) Qual é a super palavra-chave?

A palavra-chave super é usada para invocar o método substituído, que substitui um de seus métodos de superclasse. Esta palavra-chave permite acessar métodos substituídos e também acessar membros ocultos da superclasse.

Ele também encaminha uma chamada de um construtor para um construtor na superclasse.


21) O que é substituição de método?

A substituição de método é um recurso que permite que uma subclasse forneça a implementação de um método que substitui na classe principal. Ele substituirá a implementação na superclasse, fornecendo o mesmo nome de método, mesmo parâmetro e mesmo tipo de retorno.


22) O que é uma interface?

Uma interface é uma coleção de um método abstrato. Se a classe implementa uma interface, ela herda todos os métodos abstratos de uma interface.

Java usa Interface para implementar heranças múltiplas.


23) O que é tratamento de exceções?

Uma exceção é um evento que ocorre durante a execução de um programa. As exceções podem ser de qualquer tipo – exceção de tempo de execução, exceções de erro. Essas exceções são tratadas adequadamente por meio de mecanismos de tratamento de exceções, como palavras-chave try, catch e throw.


24) O que são fichas?

Um compilador reconhece um token e ele não pode ser dividido em elementos componentes. Palavras-chave, identificadores, constantes, literais de string e operadores são exemplos de tokens.

Até mesmo os caracteres de pontuação também são considerados tokens. Exemplo: colchetes, vírgulas, colchetes e parênteses.


25) Qual é a principal diferença entre sobrecarga e substituição?

A sobrecarga é uma ligação estática, enquanto a substituição é uma ligação dinâmica. A sobrecarga nada mais é do que o mesmo método com argumentos diferentes, podendo ou não retornar o valor igual na mesma classe.

A substituição consiste nos mesmos nomes de métodos com os mesmos argumentos e tipos de retorno associados à classe e sua classe filha.


26) Qual é a principal diferença entre uma classe e um objeto?

Um objeto é uma instância de uma classe. Os objetos contêm múltiplas informações, mas as classes não possuem nenhuma informação. A definição de propriedades e funções pode ser feita em classe e pode ser utilizada pelo objeto.

Uma classe pode ter subclasses, enquanto um objeto não possui subobjetos.


27) O que é uma abstração?

A abstração é um recurso útil do OOPS e mostra apenas os detalhes necessários ao cliente de um objeto. Ou seja, mostra apenas os detalhes necessários para um objeto, não os construtores internos de um objeto. Exemplo – Quando você deseja ligar a televisão, não é necessário conhecer o circuito/mecanismo interno necessário para ligar a TV. Tudo o que for necessário para ligar a TV será mostrado usando uma classe abstrata.


28) Quais são os modificadores de acesso?

Os modificadores de acesso determinam o escopo do método ou das variáveis ​​que podem ser acessadas de vários outros objetos ou classes. Existem cinco tipos de modificadores de acesso e são os seguintes:

  • Privado
  • Protegido
  • Público
  • Amigos
  • Amigo Protegido

29) O que são modificadores selados?

Modificadores selados são os modificadores de acesso onde os métodos não podem herdá-los. Modificadores selados também podem ser aplicados a propriedades, eventos e métodos. Este modificador não pode ser usado para membros estáticos.


30) Como podemos chamar o método base sem criar uma instância?

Sim, é possível chamar o método base sem criar uma instância. E esse método deve ser “Método estático”.

Fazendo herança dessa classe.-Use a palavra-chave base de uma classe derivada.


31) Qual é a diferença entre novo e substituição?

O novo modificador instrui o compilador a usar a nova implementação em vez da função da classe base. Considerando que o modificador Override ajuda a substituir a função da classe base.


32) Quais são os vários tipos de construtores?

Existem três tipos de construtores:

– Construtor padrão – Sem parâmetros.

– Construtor Paramétrico – Com Parâmetros. Cria uma nova instância de uma classe e passa argumentos simultaneamente.

– Construtor de Cópia – Que cria um novo objeto como uma cópia de um objeto existente.


33) O que é vinculação antecipada e tardia?

A ligação antecipada refere-se à atribuição de valores às variáveis ​​durante o tempo de design, enquanto a ligação tardia refere-se à atribuição de valores às variáveis ​​durante o tempo de execução.


34) O que é o ponteiro 'este'?

ESTE ponteiro refere-se ao objeto atual de uma classe. ESTA palavra-chave é usada como um ponteiro que diferencia o objeto atual do objeto global. Refere-se ao objeto atual.


35) Qual a diferença entre estrutura e classe?

O tipo de acesso padrão de uma Estrutura é público, mas o tipo de acesso de classe é privado. Uma estrutura é usada para agrupar dados, enquanto uma classe pode ser usada para agrupar dados e métodos. As estruturas são usadas exclusivamente para dados e não requerem validação estrita, mas as classes são usadas para encapsular dados inerentes, o que requer validação estrita.


36) Qual é o modificador de acesso padrão em uma classe?

O modificador de acesso padrão de uma classe é Interno e o modificador de acesso padrão de um membro da classe é Privado.


37) O que é uma função virtual pura?

Uma função virtual pura é uma função que pode ser substituída na classe derivada, mas não pode ser definida. Uma função virtual pode ser declarada como Pure usando o operador =0.

Exemplo -

Virtual void function1() // Virtual, Not pure

Virtual void function2() = 0 //Pure virtual


38) Quais são todos os operadores que não podem ser sobrecarregados?

A seguir estão os operadores que não podem ser sobrecarregados -.

  1. Resolução de escopo (::)
  2. Seleção de Membros (.)
  3. Seleção de membros através de um ponteiro para função (.*)

39) O que é polimorfismo dinâmico ou de tempo de execução?

O polimorfismo dinâmico ou em tempo de execução também é conhecido como substituição de método, na qual a chamada para uma função substituída é resolvida durante o tempo de execução, não no tempo de compilação. Significa ter dois ou mais métodos com o mesmo nome, mesma assinatura, mas com implementações diferentes.


40) Exigimos um parâmetro para construtores?

Não, não exigimos um parâmetro para construtores.


41) O que é um construtor de cópia?

Este é um construtor especial para criar um novo objeto como uma cópia de um objeto existente. Sempre haverá apenas um construtor de cópia que pode ser definido pelo usuário ou pelo sistema.


42) O que a palavra-chave virtual representa na definição do método?

Isso significa que podemos substituir o método.


43) Se o método estático pode usar membros não estáticos?

Falso.


44) O que são classe base, subclasse e superclasse?

A classe base é a classe mais generalizada e é considerada uma classe raiz.

Uma subclasse é uma classe que herda de uma ou mais classes base.

A superclasse é a classe pai da qual outra classe herda.


45) O que é vinculação estática e dinâmica?

Binding nada mais é do que a associação de um nome à classe. Static Binding é uma vinculação cujo nome pode ser associado à classe durante o tempo de compilação, e também é chamada de vinculação inicial.

Dynamic Binding é um binding cujo nome pode ser associado à classe durante o tempo de execução, e também é chamado de Late Binding.


46) Quantas instâncias podem ser criadas para uma classe abstrata?

Nenhuma instância será criada para uma classe abstrata. Em outras palavras, você não pode criar uma instância de uma classe abstrata.


47) Qual palavra-chave pode ser usada para sobrecarga?

A palavra-chave do operador é usada para sobrecarga.


48) Qual é o especificador de acesso padrão em uma definição de classe?

O especificador de acesso privado é usado em uma definição de classe.


49) Qual conceito OOPS é utilizado como mecanismo de reutilização?

Herança é o conceito OOPS que pode ser usado como mecanismo de reutilização.


50) Qual conceito OOPS expõe apenas as informações necessárias às funções de chamada?

Encapsulamento

Essas perguntas da entrevista também ajudarão em sua viva (oral)

Compartilhar

79 Comentários

  1. Avatar Abhinav Bhardwaj diz:

    A pergunta nº 16 tem resposta errada.
    Uma classe abstrata também pode conter métodos não abstratos.

    1. Avatar Manoj Kumar diz:

      Abhinav está certo..

      Uma classe abstrata pode ter métodos abstratos e não abstratos. No mínimo um método abstrato é obrigatório.

        1. Avatar Sahira Ashraf diz:

          O C++ oferece suporte a 5 tipos de especificador de acesso?

          1. Avatar Zarish Alam diz:

            Não, acho que apenas 3…privado, público, protegido. Os dois restantes, eu acho, são para Java

          2. Avatar Ahmad Attal diz:

            O acessador do modificador Zarish Alam tem seis contas desprotegidas ho ga

          3. Avatar wazir khanzaman diz:

            não, acho que apenas três tipos

      1. Mínimo de um método abstrato é obrigatório – está errado. Podemos criar uma classe abstrata sem nenhum método abstrato, apenas certifique-se de que ela não seja instanciada.

      2. Por favor, leia-o completo. esta condição é aplicável apenas em java.

    2. mano, na verdade, se você fizer seu método como um abstrato, então você terá que fazer sua classe como um abstrato, mas se você fizer sua classe como um abstrato, então não é obrigatório tornar os métodos como um abstrato. obrigado

    3. Avatar Fraz Ahtar diz:

      somente na classe abstrata java tem apenas método abstrato, não para todos

  2. Avatar Edwin Escoto diz:

    como você sabe no item 15 que o valor de aeb é 1.2 e 6, respectivamente?

    1. Avatar Abishek Rajagopal diz:

      esses são os valores passados ​​para ele

  3. Avatar Arulprakasan diz:

    Muito bom, útil !!! Obrigado guru da carreira !!

  4. Avatar Mohini Barelikar diz:

    Obrigado ao guru da carreira

  5. A resposta à última pergunta não. 50 – Qual conceito OOPS expõe apenas informações necessárias às funções chamadoras? A abstração está errada. Em vez disso, deveria ser Encapsulamento. A ocultação de dados refere-se ao encapsulamento e não à abstração. Abstração é uma forma de projetar o código.

      1. A pergunta do questionário relacionada ainda diz Abstração.

          1. Abstração é a resposta correta. encapsulamento é a associação de dados e funções com um objeto. Embora o encapsulamento esconda dados do resto do programa, a questão não é essa.

          2. Avatar mas deveria ser apenas abstração diz:

            por favor corrija isso

  6. é muito útil para os alunos básicos

  7. A pergunta nº 4, você pode verificar a resposta uma vez, por favor. Sinta que a formação das frases precisa ser corrigida.

  8. Pergunta no.16
    A classe abstrata pode ter métodos abstratos e também não abstratos em java. se você declarar um método abstrato, é obrigatório declarar uma classe como abstrata, mas quando declarar uma classe como abstrata, não é obrigatório declarar um método como abstrato em java.

  9. Uma classe abstrata pode conter apenas métodos abstratos. é isso ?
    se não estou errado, ele pode conter o método abstrato e também o método não abstrato.

  10. Na resposta à 31ª pergunta, novo é um operador e não um modificador….

  11. A pergunta nº 36 tem resposta errada. O modificador de acesso padrão para uma classe é interno, mas não privado

  12. Acho que a resposta à pergunta nº 50 é Abstração

    1. na minha opinião, a resposta para 50 deveria ser Abstração.

  13. Avatar Gadipe Ramya diz:

    Eu quero isso como arquivo PDF

    1. Me envie uma mensagem inbox ou um e-mail

  14. Qual é o modificador de acesso padrão em uma classe?
    -A resposta correta é pública. Por favor atualize.

    1. O modificador de acesso padrão em uma classe é “Privado”.

    2. a resposta está correta, o modificador de acesso padrão é privado, não há necessidade de atualização

    3. a resposta está correta, é apenas privada.

    4. O modificador de acesso padrão é privado em uma classe

    5. Eu não sou 100%, isso está correto.

      1. O modificador de acesso padrão da classe é privado em c++ e é público em java

  15. Abdul Waris diz:

    Obrigado foi muito útil, por favor, tenha uma correção
    Qual é o modificador de acesso padrão em uma classe?
    -A resposta correta é pública. Por favor atualize.

  16. Avatar Bhanu Kant Mishra diz:

    O modificador de acesso padrão de uma classe é interno.
    O modificador de acesso padrão de um membro da turma é privado.
    Por favor corrija isso…….

    1. Obrigado por escrever. Ele é revisado e corrigido.

  17. Avatar Bhanu Kant Mishra diz:

    Qual conceito OOPS expõe apenas as informações necessárias para as funções de chamada?
    Abstração é a resposta correta… Ela mostra apenas as informações necessárias.
    O encapsulamento oculta os dados importantes do usuário final.

  18. Avatar Kahsay com Kidan diz:

    suas anotações estão muito boas, mas você tem que preparar códigos com suas soluções. obrigado pela palestra

  19. Avatar Abhinav Kannojia diz:

    Interno para a turma e privado para o aluno. Portanto, a resposta está parcialmente certa.

  20. Avatar Pranav Bilurkar diz:

    O modificador de acesso padrão para todas as classes de nível superior, incluindo uma classe normal, é INTERNO e não é público ou privado.

  21. Mahesh Raj diz:

    Você é ótimo senhor
    Por favor, senhor, próximas principais perguntas sobre
    1. Front-end
    2. Back-end
    3. Aplicativo Android 🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏♥️♥️♥️♥️ ♥️♥️♥️♥️♥️🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏🙏

  22. 4 pilares do oop são significativos, como, e se omitirmos quaisquer 2 dos pilares, que efeito isso terá no oop? por favor, por favor, responda para uma declaração simples

  23. Avatar Inam Ullah diz:

    é muita ajuda completo obrigado

  24. Avatar Deependra Kumar diz:

    A resposta da 50ª pergunta está certa ou deveria ser uma abstração ??

  25. Acho que a última resposta deveria ser abstração em vez de encapsulamento

  26. Acho que 50º está errado..
    deveria ser abstração (não encapsulamento)

    1. deveria ser encapsulamento porque estamos escondendo detalhes de outras classes.

  27. Avatar Pooja Joshi diz:

    questão 16) Uma classe abstrata pode conter métodos abstratos e não abstratos.

    1. Avatar Fraz Ahtar diz:

      uma classe abstrata tem abstrato e não abstrato em c, python, mas em java a classe abstrata tem apenas método abstrato

  28. Avatar GAIKWAD RAJSHRI diz:

    Obrigado pela boa sugestão pelas informações sobre a linguagem oop

  29. Avatar Fraz Ahtar diz:

    uma classe abstrata tem abstrato e não abstrato em c, python, mas em java a classe abstrata tem apenas método abstrato

  30. 14) O que é sobrecarga de funções?
    >> A sobrecarga de função é uma função regular, mas pode executar tarefas diferentes

    Não, isto está errado. A função executa exatamente a mesma tarefa. a única diferença é o número ou tipo de parâmetros.

    Se a função for chamada 'Adicionar', ela deverá Adicionar, independentemente da assinatura da função.

  31. obrigado por essas perguntas. Isso me ajuda a relembrar todos os meus conceitos.

Deixa um comentário

O seu endereço de e-mail não será publicado. Os campos obrigatórios são marcados com *