In this post you will get to know about the technical interview questions asked at Infosys during your interview. I included the answers for all the interview questions as well.
Infosys Technical Interview Questions & Answers
1) What is polymorphism?
Polymorphism is a concept by which we can perform a single action in different ways. Polymorphism is derived from two Greek words: poly and morphs. The word “poly” means many and “morphs” means forms. So polymorphism means many forms.
2) Explain the functionality of linked list.
A linked list consists of two parts. Information part and the link part. In the single linked list, first node of the list is marked by a unique pointer named as start and this pointer points to the first element of the list, and the link part of each node consists of a pointer pointing to the next node, but the last node of the list has null pointer identifying the last node. The linked list can be traversed easily with the help of Start pointer.
3) What is normalization of databases, joins, and keys?
Normalization is also known as the process of organizing data in a DBMS efficiently without any loss of data.
Advantages of the normalization process are as follows:
First is eliminating redundant data and ensuring data dependencies make sense. It reduces the amount of space that the database consumes and ensure that data is logically stored.
This clause is used in DBMS to combine rows from two or more tables, based on a related column between them.
Keys are a crucial part of the relational database model. They are used to identify and establish relationships between tables. They are also used to uniquely determine each record or row of data in a table.
A Key can be a single attribute or a group of attributes acting as a key.
4) What is inheritance?
In, object-oriented programming, inheritance is a mechanism based on classes.
Inheritance refers to inheriting the data members and properties of a parent class to a child class. A class which is derived from another class is often called as a sub-class, and the class from which the child class is derived is known as super-class or parent class.
5) What are the different types of inheritance?
Types of Inheritance:
- Single inheritance
- Multiple Inheritance
- Multi-level Inheritance
- Multi-path Inheritance
- Hierarchical Inheritance
- Hybrid Inheritance
6) Difference between classes and interface?
The difference between classes and interface are listed below:
- The instance of the class can be created by creating its object, whereas interfaces cannot be instantiated as all the methods in the interface are abstract and do not perform any action, There is no need for instantiating an interface.
- A class is declared using class keyword whereas an interface is declared using interface keyword.
- The members of the class can have access specifier such as public, protected, and private but members of the interface cannot have the access specifier, all the members of the interface is declared as public because the interface is used to derive another class. There will be no use of access specifies inside the members of an interface.
- The methods inside the class are defined to perform some actions on the fields declared in the class whereas interface lacks in declaring in fields, the methods in an interface are purely abstract.
- A class can implement any number of the interface but can only extend one superclass, whereas interface can extend any number of interfaces but cannot implement any interface.
- A class can have a constructor defined inside the class to declare the fields inside the class, whereas interface doesn’t have any constructor defined because there are no fields to be initialized.
7) What is software development life-cycle? Also, explain the waterfall model.
SDLC is a process followed for developing and enhancing software project. It consists of a detailed plan for developing, maintaining a specific software. The life cycle defines a methodology process for improving the quality of software and the overall development process.
In “The Waterfall” model, the whole process of software development is divided into separate phases. In this Waterfall model, typically, the outcome of one phase acts as the input for the next phase sequentially.
8) What are the four basic principles of OOPS?
The four basic principles of Object-Oriented Programming System are listed below:
9) What are the conditional statements?
The conditional statements can alternatively be called a conditional expression also. Conditional statements are the set of rules which were executed if a particular condition is true. It is often referred to an if-then statement because if the condition is true, then the statement is executed.
10) What is Database Management System?
A Database Management System is a software system is used for creating and managing databases. DBMS make it possible for the end user to create and maintain databases. DBMS provides an interface between the end user/application and the databases.
11) List different advantages of DBMS.
Improved data sharing.
The list of several advantages of Database Management System:
- Improved data security.
- Better data integration.
- Minimized data inconsistency.
- Improved data access.
- Improved decision making.
- Increased end-user productivity.
12) What do you mean by Object-Relational DBMS?
The object-relational database (ORD) is a database management system (DBMS) that are composed of both an object-oriented database (OODBMS) and a relational database (RDBMS).
ORD supports the essential components of an object-oriented database model in its schemas and the query language used, such as inheritance, classes, and objects.
An object-relational database is also known as an object-relational database management systems (ORDBMS).
13) What is database Schema?
It is a set of formulas (sentences) called integrity constraints imposed on a database.
14) What is an IC? What is its importance?
IC refers to integrated circuits sets of electronic circuits on single flat piece semiconductor material, and usually, silicon is used.
The integration of a large number of tiny transistors into a small chip results in circuits that are smaller in size and faster than those discrete electronic components.
The importance of integrated circuits than the separate electronic components is integrated circuits are smaller in size, faster, low costs than discrete electronic components.
15) Tell me something about DSN?
A Data Source Name as the name suggests it is the logical name for Open Database Connectivity to refer to other information that is required to access data. For a connection to an ODBC data source Microsoft SQL Server database.
16) What is the difference between a Clustered-index and a non-clustered-index?
Clustered Index – Only one per table is allowed
Faster to read than non clustered because the data is physically stored in index order
Non-Clustered Index – Can be used many times in a table
Quicker for inserting and updating operations than a clustered index
17) Difference between C & embedded C.
C is a type of the computer programming language. C was initially developed by Dennis Ritchie in AT&T Bell Labs between 1969 and 1973. It has a free-format program source code. C is a general-purpose programming language.
C is generally used for desktop computers
C can use the resources of a desktop PC like memory, OS, etc.
Compilers for C (ANSI C) typically generate OS dependent executables.
- Embedded C is the set of language extensions for the C Programming language. It was released by the C Standards committee. Through the Embedded C extensions, the C Standards committee hoped to address the commonality issues that exist between C extensions for different embedded systems.
- Embedded C is for micro-controller based applications.
- Embedded C is used with the limited resources, such as RAM, ROM, I/Os on an embedded processor.
- Embedded C requires compilers to create files to be downloaded to the micro-controllers/microprocessors where it needs to run.
18) What is a pointer in C? What is its use?
The pointer is a particular variable which holds the address of another variable of the same type. Pointers can be of any data type and structure are allowed in C programming language. Pointer variable stores the address of another variable of the same data type as the value of the pointer variable.
Following are the uses of pointers:
To point a variable in the memory.
Pointers are used to traverse the linked list.
To point out a structure.
19) Different between a session and a socket?
The Socket is the Combination of Ip address, and Port Number and the session is a Logical Connectivity between the source and destination.
20) What is a null pointer?
The null pointer is the pointer with no reference to any location of the memory.
A null pointer contains zero as its value which means pointer is empty and not pointing to anywhere in the memory. Null pointers can be used further in the program to initialize the address of the memory location with the same data type of the pointer.
22) What is a Real-Time OS?
A real-time operating system is an operating system which acts as an interface between hardware and user. This system guarantees a specific capability within a specified time. For example, an operating system is designed to ensure that a specific object was available for a robot on an assembly line.
23) Which functions are used for memory allocation in C/C++
The Function calloc() allocates a memory area, and the length will be the product of its parameters(it has two parameters). It fills the memory with ZERO’s and returns a pointer to the first byte of the memory. If it fails to locate enough space, Then it returns a NULL pointer.
The function malloc() allocates a memory area, and length will be the value entered as a parameter. (it has one parameter).
It does not initialize memory area free() used to free the allocated memory(allocated through calloc and malloc), in other words, this used release the allocated memory new also used to allocate memory on the heap and initialize the memory using the constructor delete also used release memory allocated by new operator
24) What is a virtual function and what is the pure virtual function?
Virtual function:- In order to achieve polymorphism, function in base class is declared as virtual, By declare virtual we make the base class pointer to execute the function of any derived class depends on the content of pointer (any derived class address).
Pure Virtual Function:- This is a function used in base class, and its definition has to be provided in a derived class, In other pure virtual function has no definition in the base is defined as:
virtual void fun()=0;
That means this function not going to do anything, In case of the pure virtual function derived function has to implement the pure virtual function or redeclare it as the pure virtual function
25) What are WPF-WCF?
WPF/WCF application, need in .NET 3.0 Framework. This application will cover the following concepts:
- WCF(Windows Communication Foundation)
- The new service orientated attributes
- The use of interfaces
- The use of callbacks
- Asynchronous delegates
- Creating the proxy
- WPF( Windows Presentation Foundation )
- Multithreading a WPF application
26) Difference between the EXE and the DLL file extension?
The term EXE is a short-term of the word executable as it identifies the file as a program. Whereas, DLL stands for Dynamic Link Library, which commonly contains functions and procedures that can be used by other programs.
27) Scenarios in which the web application should be used and scenarios in which desktop application should be used?
Scenarios in which web application used are listed below:
- Cost effective development
- Accessible anywhere
- Easily customizable
Scenarios in which desktop application should be used are listed below:
- Desktop application usually has more control.
Safe for computationally expensive software that needs to communicate directly with the OS.
The desktop application is often offline and does not need an Internet connection to function compared to a web application.
28) What is an array?
An array is a group of elements used to store a group of related data of the same data type.
The array uses index number to identify each element in an array.
29) What are the SQL tables?
A table is a set of related data in a structured format in the database. A table is consists of rows and columns.
30) What is the difference between array and pointer?
An array is the group of similar elements having the same data type, whereas the pointer is a variable pointing to some data type in the memory. Arrays can only contain the elements of similar data type whereas pointer variable is used to point to any data type variable.
31) How abstraction and encapsulation complementary?
Abstraction and encapsulation are complementary because in object-oriented programming classes can only be abstracted if it is encapsulated. The abstraction focuses on the observable behavior of an object, whereas encapsulation focuses on the implementation that gives rise to this behavior.
32) How is modularity present in C++?
Modularity is the concept explained in oops concept, and it was introduced with class and objects in c++. Functions, classes, structures implements modularity in C++.
33) Define the structural difference between the b-tree index and bitmap?
This tree structure was developed by Bayer and McCreight in 1972.
This tree structure is a height-balanced m-way search tree. A B-tree of the order m can be defined as an m-way search tree.
It is made up of branch nodes and leaf nodes.
It consists merely of bits for every single distinct value. It uses a string of bits to locate rows in a table quickly. Used to index low cardinality columns.
34) What do you mean by platform independence?
The platform independence refers to the ability of programming language or a platform that you implement on one machine and use them on another machine without or minimal changes. There are two types of platform independence, source platform independence, and binary platform independence.
For example, Java is a binary platform independent language whereas c and c++ are source platform independence languages because java uses java virtual machine to run their programs but c and c++ use compilers to convert the source code to executable machine language.
35) Differentiate between Char and Varchar in DBMS?
Char and Varchar both are the datatypes in DBMS. Char and varchar both datatypes are used to store characters up to 8000. The only point of difference between the Char and Varchar is Char fixed length string datatype whereas Varchar, as the name suggests, is a variable length character storing data type.
For example, char(7) will take 7 bytes of memory to store the string, and it also includes space. Whereas varchar will take variable space, which means that it will only take that much of space as the actual data entered as the data of varchar data type.
36) Do you know about the different level of languages?
The different levels of programming languages were listed below:
- Low-level Language– Language which is understandable by machine is often known as machine language (binary language). It is challenging to read and doing code in this language by humans directly.
- Assembly level language– Some mnemonics are used which reduce the complexity of the program.
- Middle-level Language– This language is not so tricky as the assembly language, but it still requires the knowledge of computer hardware which makes it little difficult to program. For Example C and C++ programming languages.
- High-level language– Its right to say, this level of the programming language is the highest level of the programming language in the technology. These types of programming languages do not require the knowledge of the hardware. This level of the programming language is elementary to learn by the humans. For Example Java, PHP, Perl, Python, etc.
37) What is the word used for the virtual machine in JAVA? How is it implemented?
The word “Java Virtual Machine known as JVM in short” is used for the virtual machine in Java. This word is implemented from the java runtime environment (JRE).
38) List the areas in which data structures are applied extensively?
The list of areas where data structures are applied extensively are listed below:
Database management System
Statistical analysis package
39) Difference between Class and Struct.
A structure and a class differ a lot as a structure has limited functionality and features as compared to a class. A class can be defined as the collection of related variables and functions encapsulated in a single structure whereas a structure can be referred to as an user-defined datatype for processing its operations.
A keyword “Struct” is used for declaration of Struct Where a keyword “class” is used for the declaration of a class in the programming language. Default access specifier of the class is private whereas default access specifier of the struct is public.
The purpose of the class is data abstraction and further inheritance whereas the use of the struct is generally, Grouping of data. General usage of the struct is a small amount of data whereas general usage of the class is to store a large amount of data.
40) Describe three levels of data abstraction? Which layer is at the user end?
The three levels of data abstraction are listed below:
Physical level: This is the lowest level of database abstraction describes how the data are stored.
Logical level: This level is the next higher level than the physical level of database abstraction, which represents the data stored in the database and what relationship among those data.
View level: This is the highest level of database abstraction describes only part of the entire database.
No doubt, View level layer of database abstraction is at the user end.
41) Difference between ‘Macro’ and ‘ordinary’ definition.
- Macro takes parameters whereas the ordinary definition does not.
- Based on the parameter values to macro, it can result in different value at runtime. Ordinary definition value remains same at all place at runtime.
- Macro can be used for conditional operations whereas the definition cannot.
- Using macro one can achieve inline functionality in C, i.e., a macro can be a function performing simple operations. This is not possible using definitions.
42) What is the difference and similarity between C and C++?
C and C++ both use the same syntax. C++ is the extension of the C language. C and C++ both have same compilers.
C++ language consists of classes and objects whereas there are no classes and objects available in the C language.
C++ is an OOP based programming whereas C is not OOPS based programming language.
43) What are the different modulation techniques?
The two types of modulation techniques are an analog and digital modulation. Further analog modulation is subdivided into amplitude, frequency and phase modulation.
44) Differentiate between ‘a’ and “a.”
“a” is string value whereas ‘a’ is a character value in c programming language.
45) What is the pre-processor?
The pre-processor is just a text substitution tool, and they instruct the compiler to do required pre-processing before actual compilation.