Principales 50 preguntas y respuestas de entrevistas de OOP (2023)

Aquí hay preguntas y respuestas de la entrevista de OOP para candidatos más nuevos y experimentados para obtener el trabajo de sus sueños.

1) ¿Qué es OOPS?

OOPS se abrevia como sistema de programación orientada a objetos en el que los programas se consideran como una colección de objetos. Cada objeto no es más que una instancia de una clase.


2) Escribir conceptos básicos de OOPS?

Los siguientes son los conceptos de OOPS:

  1. Abstracción
  2. La encapsulación
  3. Herencia
  4. Polimorfismo

Descarga gratuita de PDF: Preguntas y respuestas de la entrevista de POO


3) ¿Qué es una clase?

Una clase es simplemente una representación de un tipo de objeto. Es el anteproyecto/plan/plantilla que describe los detalles de un objeto.


4) ¿Qué es un Objeto?

Un objeto es una instancia de una clase. Tiene su propio estado, comportamiento e identidad.


5) ¿Qué es la encapsulación?

La encapsulación es un atributo de un objeto y contiene todos los datos que están ocultos. Esos datos ocultos pueden restringirse a los miembros de esa clase.

Los niveles son Público, Protegido, Privado, Interno y Protegido Interno.


6) ¿Qué es el polimorfismo?

El polimorfismo no es más que asignar comportamiento o valor en una subclase a algo que ya fue declarado en la clase principal. Simplemente, el polimorfismo toma más de una forma.

Preguntas de la entrevista de OOP
Preguntas de la entrevista de OOP

7) ¿Qué es la herencia?

La herencia es un concepto en el que una clase comparte la estructura y el comportamiento definido en otra clase. Si la herencia aplicada a una clase se denomina herencia única, y si depende de varias clases, se denomina herencia múltiple.


8) ¿Qué son los manipuladores?

Los manipuladores son las funciones que se pueden usar junto con los operadores de inserción (<<) y extracción (>>) en un objeto. Los ejemplos son endl y setw.


9) Explique el término constructor

Un constructor es un método utilizado para inicializar el estado de un objeto y se invoca en el momento de la creación del objeto. Las reglas para el constructor son:

  • El nombre del constructor debe ser el mismo que el nombre de una clase.
  • Un constructor no debe tener ningún tipo de retorno.

10) ¿Definir Destructor?

Un destructor es un método que se llama automáticamente cuando el objeto se elimina o se destruye. El nombre del destructor también es el mismo que el nombre de la clase pero con el símbolo de tilde antes del nombre.


11) ¿Qué es una función en línea?

Una función en línea es una técnica utilizada por los compiladores e indica insertar el cuerpo completo de la función donde sea que se use esa función en el código fuente del programa.


12) ¿Qué es una función virtual?

Una función virtual es una función miembro de una clase y su funcionalidad se puede anular en su clase derivada. Esta función se puede implementar usando una palabra clave llamada virtual y se puede proporcionar durante la declaración de la función.

Una función virtual se puede declarar usando un token (virtual) en C++. Se puede lograr en lenguaje C/Python usando punteros de función o punteros a función.


13) ¿Qué es una función de amigo?

Una función de amigo es un amigo de una clase que puede acceder a datos públicos, privados o protegidos en esa misma clase. Si la función se define fuera de la clase no se puede acceder a dicha información.

Un amigo puede declararse en cualquier parte de la declaración de clase y no puede verse afectado por palabras clave de control de acceso como privado, público o protegido.


14) ¿Qué es la sobrecarga de funciones?

La sobrecarga de funciones es una función normal, pero se le asignan varios parámetros. Permite la creación de varios métodos con el mismo nombre que se diferencian entre sí por el tipo de entrada y salida de la función.

Ejemplo

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

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

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


15) ¿Qué es la sobrecarga de operadores?

La sobrecarga de operadores es una función en la que se aplican diferentes operadores y depende de los argumentos. El operador,-,* se puede usar para pasar a través de la función y tiene su propia precedencia para ejecutar


16) ¿Qué es una clase abstracta?

Una clase abstracta es una clase que no puede ser instanciada. La creación de un objeto no es posible con una clase abstracta, pero se puede heredar. Una clase abstracta solo puede contener un método abstracto. Java solo permite el método abstracto en la clase abstracta, mientras que otros lenguajes también permiten el método no abstracto.


17) ¿Qué es un operador ternario?

Se dice que el operador ternario es un operador que toma tres argumentos. Los argumentos y los resultados son de diferentes tipos de datos, y depende de la función. El operador ternario también se llama operador condicional.


18) ¿Cuál es el uso del método de finalización?

El método Finalize ayuda a realizar operaciones de limpieza en los recursos que no se utilizan actualmente. El método Finalize está protegido y solo se puede acceder a él a través de esta clase o de una clase derivada.


19) ¿Cuáles son los diferentes tipos de argumentos?

Un parámetro es una variable utilizada durante la declaración de la función o subrutina, y los argumentos se pasan al cuerpo de la función, y debe coincidir con el parámetro definido. Hay dos tipos de Argumentos.

  • Llamada por valor: el valor pasado se modificará solo dentro de la función y devuelve el mismo valor independientemente de lo que se pase a la función.
  • Llamada por referencia: el valor pasado se modificará tanto dentro como fuera de las funciones y devuelve el mismo valor o un valor diferente.

20) ¿Cuál es la palabra clave súper?

La palabra clave super se utiliza para invocar el método anulado, que anula uno de sus métodos de superclase. Esta palabra clave permite acceder a métodos anulados y también a miembros ocultos de la superclase.

También reenvía una llamada de un constructor a un constructor en la superclase.


21) ¿Qué es la anulación de métodos?

La anulación de métodos es una función que permite que una subclase proporcione la implementación de un método que anula en la clase principal. Anulará la implementación en la superclase proporcionando el mismo nombre de método, el mismo parámetro y el mismo tipo de devolución.


22) ¿Qué es una interfaz?

Una interfaz es una colección de un método abstracto. Si la clase implementa una interfaz, hereda todos los métodos abstractos de una interfaz.

Java usa Interface para implementar múltiples herencias.


23) ¿Qué es el manejo de excepciones?

Una excepción es un evento que ocurre durante la ejecución de un programa. Las excepciones pueden ser de cualquier tipo: excepción de tiempo de ejecución, excepciones de error. Esas excepciones se manejan adecuadamente a través de un mecanismo de manejo de excepciones como las palabras clave try, catch y throw.


24) ¿Qué son las fichas?

Un compilador reconoce un token y no se puede dividir en elementos componentes. Las palabras clave, los identificadores, las constantes, los literales de cadena y los operadores son ejemplos de tokens.

Incluso los caracteres de puntuación también se consideran tokens. Ejemplo: corchetes, comas, llaves y paréntesis.


25) ¿Cuál es la principal diferencia entre sobrecargar y anular?

La sobrecarga es un enlace estático, mientras que la anulación es un enlace dinámico. La sobrecarga no es más que el mismo método con diferentes argumentos, y puede o no devolver el mismo valor en la misma clase.

La anulación es el mismo nombre de método con los mismos argumentos y tipos de retorno asociados con la clase y su clase secundaria.


26) ¿Cuál es la principal diferencia entre una clase y un objeto?

Un objeto es una instancia de una clase. Los objetos contienen información múltiple, pero las clases no tienen ninguna información. La definición de propiedades y funciones se puede hacer en clase y puede ser utilizada por el objeto.

Una clase puede tener subclases, mientras que un objeto no tiene subobjetos.


27) ¿Qué es una abstracción?

La abstracción es una característica útil de OOPS y muestra solo los detalles necesarios al cliente de un objeto. Es decir, muestra solo los detalles necesarios para un objeto, no los constructores internos de un objeto. Ejemplo: cuando desee encender el televisor, no es necesario conocer el circuito/mecanismo interno necesario para encender el televisor. Lo que sea necesario para encender la televisión se mostrará mediante una clase abstracta.


28) ¿Qué son los modificadores de acceso?

Los modificadores de acceso determinan el alcance del método o las variables a las que se puede acceder desde otros objetos o clases. Hay cinco tipos de modificadores de acceso, y son los siguientes:

  • Clases
  • Protegido
  • Público
  • Amigo
  • amigo protegido

29) ¿Qué son los modificadores sellados?

Los modificadores sellados son los modificadores de acceso donde los métodos no pueden heredarlo. Los modificadores sellados también se pueden aplicar a propiedades, eventos y métodos. Este modificador no se puede utilizar para miembros estáticos.


30) ¿Cómo podemos llamar al método base sin crear una instancia?

Sí, es posible llamar al método base sin crear una instancia. Y ese método debería ser "Método estático".

Hacer herencia de esa clase.-Usar la palabra clave base de una clase derivada.


31) ¿Cuál es la diferencia entre nuevo y anulado?

El nuevo modificador indica al compilador que use la nueva implementación en lugar de la función de la clase base. Mientras que el modificador Override ayuda a anular la función de la clase base.


32) ¿Cuáles son los diversos tipos de constructores?

Hay tres tipos de constructores:

– Constructor por defecto – Sin parámetros.

– Constructor Paramétrico – Con Parámetros. Crea una nueva instancia de una clase y también pasa argumentos simultáneamente.

– Copy Constructor – Que crea un nuevo objeto como una copia de un objeto existente.


33) ¿Qué es la vinculación temprana y tardía?

El enlace temprano se refiere a la asignación de valores a las variables durante el tiempo de diseño, mientras que el enlace tardío se refiere a la asignación de valores a las variables durante el tiempo de ejecución.


34) ¿Qué es el puntero 'este'?

ESTE puntero se refiere al objeto actual de una clase. ESTA palabra clave se utiliza como puntero que diferencia el objeto actual del objeto global. Se refiere al objeto actual.


35) ¿Cuál es la diferencia entre estructura y una clase?

El tipo de acceso predeterminado de una estructura es público, pero el tipo de acceso de clase es privado. Una estructura se usa para agrupar datos, mientras que una clase se puede usar para agrupar datos y métodos. Las estructuras se usan exclusivamente para datos y no requieren una validación estricta, pero las clases se usan para encapsular datos inherentes, lo que requiere una validación estricta.


36) ¿Cuál es el modificador de acceso predeterminado en una clase?

El modificador de acceso predeterminado de una clase es Interno y el modificador de acceso predeterminado de un miembro de clase es Privado.


37) ¿Qué es una función virtual pura?

Una función virtual pura es una función que se puede anular en la clase derivada pero no se puede definir. Una función virtual puede declararse como pura usando el operador =0.

Ejemplo

Virtual void function1() // Virtual, Not pure

Virtual void function2() = 0 //Pure virtual


38) ¿Cuáles son todos los operadores que no se pueden sobrecargar?

Los siguientes son los operadores que no se pueden sobrecargar -.

  1. Resolución de alcance (::)
  2. Selección de miembros (.)
  3. Selección de miembros a través de un puntero a función (.*)

39) ¿Qué es el polimorfismo dinámico o de tiempo de ejecución?

El polimorfismo dinámico o de tiempo de ejecución también se conoce como anulación de métodos en el que la llamada a una función anulada se resuelve durante el tiempo de ejecución, no en el momento de la compilación. Significa tener dos o más métodos con el mismo nombre, la misma firma pero con diferente implementación.


40) ¿Requerimos un parámetro para los constructores?

No, no requerimos un parámetro para los constructores.


41) ¿Qué es un constructor de copias?

Este es un constructor especial para crear un nuevo objeto como una copia de un objeto existente. Siempre habrá un solo constructor de copia que puede ser definido por el usuario o el sistema.


42) ¿Qué representa la palabra clave virtual en la definición del método?

Significa que podemos anular el método.


43) ¿El método estático puede usar miembros no estáticos?

Falso.


44) ¿Qué son una clase base, una subclase y una superclase?

La clase base es la clase más generalizada y se dice que es una clase raíz.

Una subclase es una clase que hereda de una o más clases base.

La superclase es la clase padre de la que hereda otra clase.


45) ¿Qué es Binding estático y dinámico?

La vinculación no es más que la asociación de un nombre con la clase. El enlace estático es un enlace en el que el nombre se puede asociar con la clase durante el tiempo de compilación, y también se denomina enlace temprano.

El enlace dinámico es un enlace en el que el nombre se puede asociar con la clase durante el tiempo de ejecución, y también se denomina enlace tardío.


46) ¿Cuántas instancias se pueden crear para una clase abstracta?

Se crearán cero instancias para una clase abstracta. En otras palabras, no puede crear una instancia de una clase abstracta.


47) ¿Qué palabra clave se puede usar para sobrecargar?

La palabra clave del operador se utiliza para la sobrecarga.


48) ¿Cuál es el especificador de acceso predeterminado en una definición de clase?

El especificador de acceso privado se usa en una definición de clase.


49) ¿Qué concepto OOPS se utiliza como mecanismo de reutilización?

La herencia es el concepto OOPS que se puede utilizar como mecanismo de reutilización.


50) ¿Qué concepto de OOPS expone solo la información necesaria a las funciones de llamada?

La encapsulación


Estas preguntas de la entrevista también te ayudarán en tu viva(orals)

Compartir

78 Comentarios

  1. Avatar Abhinav Bhardwaj dice:

    La pregunta número 16 tiene una respuesta incorrecta.
    Una clase abstracta también puede contener un método no abstracto.

    1. Avatar Manoj Kumar dice:

      Abhinav tiene razón..

      Una clase abstracta puede tener métodos abstractos y no abstractos. Es obligatorio un mínimo de un método abstracto.

        1. Avatar Sahira Ashraf dice:

          ¿C++ admite 5 tipos de especificador de acceso?

          1. Avatar Zarish Alam dice:

            No, creo que solo 3…privado, público, protegido. Los dos restantes supongo que son para Java

          2. Avatar Ahmad Attal dice:

            El modificador de acceso de Zarish Alam tiene seis cuentas desprotegidas ho ga

          3. Avatar kanzaman wazir dice:

            no, creo que solo tres tipos

      1. Avatar Ananth km dice:

        Como mínimo, un método abstracto es obligatorio: está mal. Podemos crear una clase abstracta sin ningún método abstracto, solo asegúrese de que no esté instanciada.

      2. Favor de leerlo completo. esta condición es aplicable solo en java.

    2. hermano, en realidad, si haces tu método como un resumen, entonces tienes que hacer tu clase como un resumen, pero si haces tu clase como un resumen, entonces no es obligatorio hacer los métodos como un resumen. gracias

    3. Avatar fraz akhtar dice:

      solo en la clase abstracta de java solo tiene un método abstracto, no para todos

  2. Avatar Edwin Escoto dice:

    ¿Cómo sabes en el n. ° 15 que el valor de a y b es 1.2 y 6 respectivamente?

    1. Avatar Abishek Rajagopal dice:

      esos son los valores que se le pasan

  3. Avatar Arulprakasan dice:

    Realmente bueno, Útil !!! Gracias gurú de la carrera!!

  4. Avatar mohini barelikar dice:

    Gracias al gurú de la carrera.

  5. La respuesta a la última pregunta no. 50 – ¿Qué concepto OOPS expone solo la información necesaria a las funciones de llamada? La abstracción está mal. Debería ser Encapsulación en su lugar. La ocultación de datos se refiere a la encapsulación, no a la abstracción. La abstracción es una forma de diseñar el código.

      1. Avatar Tinieblas Eternas dice:

        La pregunta de prueba relacionada todavía dice Abstracción.

          1. Avatar siddharth dice:

            La abstracción es la respuesta correcta. la encapsulación es la asociación de datos y funciones con un objeto. Aunque la encapsulación oculta datos del resto del programa, la pregunta no es sobre eso.

          2. Avatar pero debería ser solo abstracción dice:

            por favor corrígelo

  6. es muy útil para los principiantes básicos

  7. La pregunta número 4, ¿puede verificar la respuesta una vez, por favor? Siente que la formación de oraciones necesita ser corregida.

  8. Pregunta no 16
    La clase abstracta puede tener un método abstracto y no abstracto en Java. si declara un método abstracto, es obligatorio declarar una clase como abstracta, pero cuando declara una clase como abstracta, no es obligatorio declarar un método como abstracto en Java.

  9. Una clase abstracta solo puede contener un método abstracto. Lo es ?
    si no me equivoco, puede contener el método abstracto y el método no abstracto.

  10. Avatar azeem khan dice:

    En respuesta a la pregunta 31, new es un operador, no un modificador….

  11. La pregunta No. 36 tiene una respuesta incorrecta. El modificador de acceso predeterminado para una clase es interno pero no privado

  12. Creo que la respuesta a la pregunta #50 es Abstracción.

    1. según yo, la respuesta para 50 debería ser Abstracción.

    1. Envíame un inbox o envíame un correo electrónico

  13. ¿Cuál es el modificador de acceso predeterminado en una clase?
    -La respuesta correcta es pública. Por favor actualice.

    1. Avatar miel de abejas dice:

      El modificador de acceso predeterminado en una clase es "Privado".

    2. la respuesta es correcta, el modificador de acceso predeterminado es privado, no es necesario actualizarlo

    3. La respuesta es correcta, solo es privada.

    4. El modificador de acceso predeterminado es privado en una clase

      1. El modificador de acceso predeterminado de clase es privado en c ++ y es público en java

  14. Avatar Abdul Waris dice:

    Gracias fue muy útil, por favor tenga una corrección.
    ¿Cuál es el modificador de acceso predeterminado en una clase?
    -La respuesta correcta es pública. Por favor actualice.

  15. Realmente genial, útil
    Muchas Gracias

  16. Avatar Bhanu Kant Mishra dice:

    El modificador de acceso predeterminado de una clase es interno.
    El modificador de acceso predeterminado de un miembro de clase es privado.
    Corrija por favor…….

    1. Gracias por escribir. Se revisa y corrige.

  17. Avatar Bhanu Kant Mishra dice:

    ¿Qué concepto de OOPS expone solo la información necesaria a las funciones de llamada?
    La abstracción es la respuesta correcta... Solo muestra la información necesaria.
    Encapsulación Ocultar los datos importantes del usuario final.

  18. Avatar Kahsay con kidan dice:

    tus apuntes estan muy contentos,pero tienes que preparar codigos con sus soluciones.gracias por tu disertación

  19. Avatar Abhinav Kannojia dice:

    Interno para clase y privado para miembro de clase. Así que la respuesta es parcialmente correcta.

  20. Avatar Pranav Bilurkar dice:

    El modificador de acceso predeterminado para todas las clases de nivel superior, incluida una clase normal, es INTERNO, y no es público ni privado.

  21. Avatar mahesh raj dice:

    Eres grande señor
    Por favor, señor siguiente Preguntas principales sobre
    1. Extremo frontal
    2. Back-end
    3. Aplicación Android ?????????????????????????????????????????????♥️♥️♥️♥️ ♥️♥️♥️♥️♥️??????????

  22. 4 pillers de oop son significativos, cómo, y si omitimos 2 de los pillers, ¿qué efecto tendrá en oop? pls pls pls respuesta para declaración simple

  23. Avatar Deependra Kumar dice:

    ¿La respuesta de la pregunta 50 es correcta o debería ser abstracción?

  24. Creo que la última respuesta debería ser abstracción en lugar de encapsulación.

  25. Creo que el 50 está mal...
    debería ser abstracción (no encapsulación)

    1. debería ser encapsulación porque estamos ocultando detalles para otras clases.

  26. Avatar Joshi Pooja dice:

    ques 16) Una clase abstracta puede contener tanto métodos abstractos como no abstractos.

    1. Avatar fraz akhtar dice:

      una clase abstracta tiene tanto abstracto como no abstracto en c, python pero en java la clase abstracta solo tiene un método abstracto

  27. Avatar GAIKWAD rajshri dice:

    Gracias por la buena sugerencia para la información sobre el lenguaje OOP.

  28. Avatar fraz akhtar dice:

    una clase abstracta tiene tanto abstracto como no abstracto en c, python pero en java la clase abstracta solo tiene un método abstracto

  29. 14) ¿Qué es la sobrecarga de funciones?
    >> La sobrecarga de funciones es una función regular, pero puede realizar diferentes tareas

    No eso está mal. La función realiza exactamente la misma tarea. la única diferencia es el número o tipo de parámetros.

    Si la función se llama 'Agregar', entonces debería Agregar, sin importar la firma de la función.

Deje un comentario

Su dirección de correo electrónico no será publicada. Los campos obligatorios están marcados *