Interview Q & A
Interview Q & A
1. Windows
What is event viewer?
What is called a domain name?
What is a host and domain?
What is Active Directory (AD) group?
Difference between system & application logs?
What is cache memory?
What is difference between host and server?
What is the difference http and https?
What is meant by client and server?
What is difference between server and cloud?
Difference between ROM & RAM?
2. .NET
What is .NET?
What is the .NET framework?
What are the most important aspects of .NET?
What is the difference between value type and reference type?
What is the difference between constants and read-only variables?
What is caching in .NET?
What is the difference between Stack and Queue?
What are globalization and localization?
What is Multithreading?
What is the difference between a DLL & EXE?
What is .net library?
What is the difference between Stack and Heap?
What are a base class and derived class?
What is Garbage Collection in .NET?
3. OOPs Concept
What is an object?
What is the difference between class & object?
What are the basic features of OOP?
Name some OOP languages?
What is inheritance?
What is Polymorphism?
Difference between Abstraction & Encapsulation?
4. SQL
What is a Database?
What is the difference between DBMS & RDBMS
What is SQL?
What are tables and Fields?
What is a primary key?
Interview Q & A
ANSWERS:
Interview Q & A
Active Directory (AD) is Microsoft's proprietary directory service. It runs on Windows Server and enables
administrators to manage permissions and access to network resources. Active Directory stores data as
objects. An object is a single element, such as a user, group, application or device such as a printer.
A domain name is a string of text that maps to a numeric IP address, used to access a website from
client software. In plain English, a domain name is the text that a user types into a browser window to
reach a particular website. For instance, the domain name for Google is '[Link]'.
The main difference between domain and hosting is that domain is the address, which allows a visitor to
easily find your website online, while hosting is where the website files are stored. In order to have a
functioning website, you need both – a domain and hosting space.
A host is a device that connects to a computer, this could be a computer, laptop, tablet or smartphone.
A server is a piece of hardware or even software that can provide a service to other devices. It can also
provide services to programs connected to the network.
HTTPS is HTTP with encryption. The only difference between the two protocols is that HTTPS uses TLS
(SSL) to encrypt normal HTTP requests and responses. As a result, HTTPS is far more secure than HTTP. A
website that uses HTTP has http:// in its URL, while a website that uses HTTPS has https://
A server is simply a computer that provides the network resources and provides service to other
computers when they request it. A client is the computer running a program that requests the service
from a server
A cloud is a type of a server, which is remote (usually in Data Centers), meaning you access it via the
internet. You are renting the server space, rather than owning the server. A local (regular) server is one
that you do buy and own physically, as well as have on site with you.
1. What is .NET?
Ans: .NET is a developer platform to build a variety of applications for web, mobile, desktop, and IoT. It
supports various languages like C#, F#, Visual Basic, J#, C++, etc. for building the applications.
Interview Q & A
Ans: The .NET framework is a software development platform that supports an object-oriented
approach. It offers services, like memory management, networking, security, and type safety.
Ans: .NET Framework supports over 60 programming languages, out of these 11 programming languages
are designed and developed by Microsoft.
Ans: .NET is an open-source platform containing around 32 programming languages and several tools for
application creation. It is highly secure and runs comfortably on multiple computer platforms.
Ans: OOP is the acronym for Object-Oriented Programming. It is a programming structure that uses self-
contained entities called ‘objects’ instead of methods to achieve the desired functionality. OOP
allows .NET developers to create modular programs and classes containing methods, properties, fields,
events, and other logical modules.
Encapsulation: Creation of self-contained modules that bind together the data and the functions that
access that data.
Abstraction: Handles complexity and allows the implementation of further complex logic without
disclosing it to the user object.
Polymorphism: Operation performed depends upon the context at runtime to facilitate easy integration.
Inheritance: Creation of classes in a hierarchy to enable a class to inherit behavior from its parent class
allowing reuse of code.
Ans: Simula was the first OOP language and Java, JavaScript, Python, C++, Visual Basic. NET, Ruby, Scala,
PHP are few others.
8. What is JIT?
Interview Q & A
Ans: JIT stands for Just In Time. It is a compiler in CLR responsible for the execution of .NET programs of
different languages by converting them into machine code. It speeds up the code execution and
supports multiple platforms.
i. Pre-JIT compiler: It compiles all the source code into the machine code in a single compilation cycle,
i.e. at the application deployment time.
ii. Normal JIT Compiler: The source code methods required at run-time are compiled into machine code
and stored in the cache to be called later.
iii. Econo JIT Compiler: The methods required only at run-time are compiled using this compiler and they
are not stored for future use.
Ans: BCL stands for Base Class Library. It comprises classes, interface, and value types. It is the
foundation for building .NET Framework applications, components, and controls.
Ans: FCL stands for Framework Class Library and is a collection of reusable types, including classes,
interfaces, and data types included in the .NET Framework. It is used for developing a wide variety of
applications, as it provides access to system functionality.
Ans: Caching functionality in .NET Framework allows data storage in memory for rapid access. It helps
improve performance by making data available, even if the data source is temporarily unavailable, and
enhances scalability.
In-Memory Cache
Distributed Cache
Ans: Cross-page posting is used to submit a form to a different page while creating a multi-page form to
collect information from the user. You can specify the page you want to post to using the PostBackURL
attribute.
Interview Q & A
Ans: Constant fields are created using the const keyword and their value remains the same throughout
the program. The Read-only fields are created using a read-only keyword and their value can be
changed. Const is a compile-time constant while Read-only is a runtime constant.
16. Explain the difference between value type and reference type?
Ans: Types in .NET Framework are either Value Type or Reference Type. A Value Type is stored in the
stack and it holds the data within its own memory allocation. While a Reference Type is stored in the
heap and it contains a pointer to another memory location that holds the real data.
Ans: EXE is an executable file that works as an application and it runs individually as it contains an entry
point. DLL is a Dynamic Link Library which is a supportive file to other applications, and it cannot run
individually.
Ans: The stack is used for static memory allocation and access to this memory is fast and simple to keep
track of. Heap is used for dynamic memory allocation and memory allocation to variables that happen at
run time. Accessing the heap memory is complex and slower compared to the stack.
Ans: The values in a stack are processed following the LIFO (Last-In, First-Out) principle, so all elements
are inserted and deleted from the top end. But a queue lists items on a FIFO (First-In, First-Out) basis in
terms of both insertion and deletion. The elements are inserted from the rear end in a queue and
deleted from the front end.
20. What are the differences between systems. StringBuilder and system. string?
Ans: System. a .string is immutable and fixed-length, whereas StringBuilder is mutable and variable
length. The size of the .string cannot be changed, but that of the .stringbuilder can be changed.
21. What is the difference between the While and For loop? Provide a .NET syntax for both loops?
Ans: The For loop provides a concise way of writing the loop structure, but the While loop is a control
flow statement that allows repetitive execution of the code. Initialization, condition checking, iteration
statements are written at the top of the For loop, but only initialization and condition checking is done
at the top of the while loop.
Ans: The base class is a class whose members and functions can be inherited, and the derived class is the
class that inherits those members and may also have additional properties.
Ans: The extension method is used to add new methods in the existing class or the structure without
modifying the source code of the original type. Special permission from the original type or re-compiling
it isn’t required.
Ans: Inheritance is a method for creating hierarchies of objects wherein one class, called a subclass, is
based on another class, called a base class.
Ans: Inheritance hierarchy is a singly rooted tree structure for organizing classes.
Ans: Implementation inheritance is when a class inherits all members of the class from which it is
derived. Interface inheritance is when the class inherits only signatures of the functions from another
class.
Ans: To prevent a class from being inherited, the sealed keyword in C# can be used. The NotInheritable
keyword can be used in [Link] to prevent accidental inheritance of the class.
Ans: A constructor is a special method of the class that contains a collection of instructions and gets
automatically invoked when an instance of the class is created.
Static Constructor: It is created using a static keyword and will be invoked only once for all of the
instances of the class.
Private Constructor: It is created with a private specifier and does not allow other classes to derive from
this class or create an instance of it.
Ans: Method Overriding is a process that allows using the same name, return type, argument, and
invoking the same functions from another class (base class) in the derived class.
Ans: Shadowing makes the method of the parent class available to the child class without using the
override keyword. It is also known as Method Hiding.
Ans: Shadowing is used to provide a new implementation for the base class method and helps protect
against subsequent base class modification. Overriding allows you to rewrite a base class function with a
different definition and achieve polymorphism.
Ans: Polymorphism refers to one interface with multiple functions. It means that the same method or
property can perform different actions depending on the run-time type of the instance that invokes it.
Ans: No, .NET supports only single inheritance due to the diamond problem. Also, it would add
complexity when used in different languages. However, multiple interfaces can solve the purpose.
Ans: It is an ambiguity that arises due to multiple inheritances in C#. Two classes B and C inherit from A,
and D inherits from both B and C but doesn’t override the method defined in A. The Diamond Problem
arises when class B or C has overridden the method differently and D cannot decide to inherit from
either B or C.
Ans: An interface is a declaration for a set of class members. It is a reference type that contains only
abstract members such as Events, Methods, Properties, etc.
Ans: Events notify other classes and objects when the desired action occurs in a class or object. A
delegate is a type-safe function pointer that defines a method signature in CLI.
Ans: It is the application processing layer that coordinates between the User Interface Layer and Data
Access Layer.
Ans: A Component does not draw itself on the form and can be placed below the form area. A control
draws itself on the form and can be placed inside the form area. Also, all controls are components, but
not all components are controls.
Ans: User and Custom controls inherit from different levels in the inheritance tree. Custom control is
designed for use by a single application while user control can be used by more than one application.
Ans: Functional requirements are the basic and mandatory facilities that must be incorporated into a
system. Non-functional requirements are quality-related attributes that the system must deliver.
Ans: Reflection objects are used for creating type instances and obtaining type information at runtime.
The classes in the [Link] namespace gives access to the metadata of a running program.
Ans: The Global Assembly Cache is a machine-wide code cache that is stored in a folder in the Windows
directory. It stores the .NET assemblies that are specifically designated to be shared by all applications
executed on the system.
Ans: Object-Role Modeling (ORM) is a powerful method for designing and querying information systems
at the conceptual level. It is an easy and understandable description of the application for non-technical
users.
Ans: MIME stands for Multipurpose Internet Mail Extension. It is an add-on or a supplementary protocol
that allows non-ASCII data to be sent through SMTP. It facilitates the exchange of data files on the
internet and was proposed by Bell Communications in 1991.
Ans: The Hashtable class is a collection that stores key-value pairs. It organizes the pairs based on the
hash code of each key and uses it to access elements in the collection.
i. Factory Method
iii. Builder
iv. Prototype
v. Singleton
i. Adapter
ii. Bridge
iii. Composite
iv. Decorator
v. Façade
vi. Flyweight
vii. Proxy
i. Chain of Responsibility
ii. Command
iii. Interpreter
iv. Iterator
v. Mediator
vi. Memento
vii. Observer
viii. State
ix. Strategy
x. Visitor
Ans: Net uses the SOLID design principle which includes the following:
Interview Q & A
Ans: Marshaling is the process of transforming types in the managed and unmanaged code.
Ans: Boxing and Unboxing is a concept of C#, which enables a unified view of the type system to treat
the value of any type as an object.
53. What is the difference between Server. Transfer and Response. Redirect?
Ans: These are used to redirect a user from one web page to the other one. The Response. The redirect
method requests a new URL and specifies the new URL. The Server. The transfer method terminates the
execution of the current page and starts the execution of a new page.
Ans: Garbage Collection in .NET Framework facilitates automatic memory management. It automatically
releases the memory space after all the actions related to the object in the heap memory are
completed.
Generation 0: Used to store short-lived objects. Frequent Garbage Collection happens in this
Generation.
56. What is the difference between trace class and debug class?
Ans: The call to Debug class is included in Debug mode only and it is used at the time of application
development. While the call to Trace class will be included in Debug as well as Release mode also and it
is used at the time of application deployment.
Ans: Debug builds do not optimize and allow the accurate setting of breakpoints. They contain
debugging symbols, but the code built-in "Release" mode is optimized for speed or size without any
debug data.
Ans: The Application object is used to share information among all users of an application. You can tie a
group of ASP files that work together to perform some purpose.
Ans: A Session object stores information and variables about a user and retains it through the session.
Ans: Managed code runs inside CLR and installing the .NET Framework is necessary to execute it.
Unmanaged code does not depend on CLR for execution and is developed using languages outside
the .NET framework.
Convert the code into Intermediate language using its own compiler.
The IL is then targeted to CLR which converts the code into native code using JIT.
i. Manifest: Also known as the assembly metadata, it has information about the version of an assembly.
Ans: MVC is an architectural model for building .Net applications. It stands for Model View Controller. It
is easy to use and offers full control over the HTML.
Ans: Stored Procedures are pre-compiled objects which execute the code when called for. While a
Function is compiled and executed when it is called for.
Interview Q & A
Ans: It is a component that allows the publishing of the application's function on the web to make it
accessible to the public. It resides on a Web server and provides information and services using standard
Web protocols such as HTTP and Simple Object Access Protocol (SOAP).
It can extend its interface and add new methods without affecting the client's operations.
Ans: MEF stands for Managed Extensibility Framework. It is a library that allows the host application to
consume external extensions without any configuration requirement.
Ans: Tuples are data structures that hold object properties and contain a sequence of elements of
different data types. They were introduced as a Tuple<T> class in .NET Framework 4.0 to avoid the need
of creating separate types to hold object properties.
Ans: ADO stands for ActiveX Data Objects. It is an application program for writing Windows applications.
It is used to get access to a relational or non-relational database from database providers such as
Microsoft and others.
Ans: Object Pooling is a concept for optimal use of limited resources through software constructs. The
ready-to-use objects, connections, and threads are stored in a pool (group) of objects in memory for
later use. For creating a new object, it is pulled from the pool and allocated for the request. Pooling
helps in improving performance and facilitates scalability.
Ans: Client-side validations take place at the client end with the help of JavaScript and VBScript offering
a better user experience. The inputs for client-side validation are validated in the user’s browser. While,
Interview Q & A
server-side validations take place at the server end using [Link] and PHP, and the feedback is sent
through a dynamically generated new webpage.
Ans: Serialization is the process of converting the state of an object into a form (a stream of bytes) to be
persisted or transported. Deserialization converts a stream into an object and is the opposite of
serialization. These processes allow data to be stored and transferred.
Ans: PE stands for Portable Executable. It is a derivative of the Microsoft Common Object File Format
(COFF). Windows executable. EXE or DLL files follow the PE file format. It consists of four parts:
3. CLR data: Contains metadata of DDLs and MSIL code generated by compilers.
4. Native image section: Contains sections like .data, .rdata, .rsrc, .text etc.
Ans: .EXE files are single outbound files that cannot be shared with other applications. DLL files are
multiple inbound files that are shareable.
Ans: [Link] copies only the structure of the DataSet which includes all DataTable schemas,
relations, and constraints but it does not copy any data. Dataset. copy is a deep copy of the DataSet that
duplicates both its structure and data.
Ans: The ErrorProvider control is used to indicate invalid data or errors to the end-user while filling a
data entry form. In case of invalid data entry, the error message attached to the error description string
is displayed next to the control.
Ans: The thread represents an actual OS-level thread, with its own stack and kernel resources, and
allows the highest degree of control. You can choose to Abort() or Suspend() or Resume() a thread, and
set thread-level properties, like the stack size, apartment state, or culture. While a Task class from the
Task Parallel Library is executed by a TaskScheduler to return a result and allows you to find out when it
finishes.
Ans: NET is an OOP framework as Encapsulation and Inheritance are key features of the Object-Oriented
Programming framework.
Interview Q & A
Ans: Multi-threading is a process that contains multiple threads each of which performs different
activities within a single process. .NET supports multithreading in two ways:
Frequently Asked SQL Interview Questions and Answers for Freshers and Experienced
1. What is DBMS?
A Database Management System (DBMS) is a program that controls creation, maintenance and use of a
database. DBMS can be termed as File Manager that manages data in a database rather than saving it in
file systems.
2. What is RDBMS?
RDBMS stands for Relational Database Management System. RDBMS store the data into the collection
of tables, which is related by common fields between the columns of the table. It also provides
relational operators to manipulate the data stored into the tables.
3. What is SQL?
SQL stands for Structured Query Language , and it is used to communicate with the Database. This is a
standard language used to perform tasks such as retrieval, updation, insertion and deletion of data from
a database.
4. What is a Database?
Database is nothing but an organized form of data for easy access, storing, retrieval and managing of
data. This is also known as structured form of data which can be accessed in many ways.
A table is a set of data that are organized in a model with Columns and Rows. Columns can be
categorized as vertical, and Rows are horizontal. A table has specified number of column called fields but
can have any number of rows which is called record.
Example:.
Table: Employee.
Interview Q & A
A primary key is a combination of fields which uniquely specify a row. This is a special kind of unique key,
and it has implicit NOT NULL constraint. It means, Primary key values cannot be NULL.
A Unique key constraint uniquely identified each record in the database. This provides uniqueness for
the column or set of columns.
A Primary key constraint has automatic unique constraint defined on it. But not, in the case of Unique
Key.
There can be many unique constraint defined per table, but only one Primary key constraint defined per
table.
A foreign key is one table which can be related to the primary key of another table. Relationship needs
to be created between two tables by referencing foreign key with the primary key of another table.
9. What is a join?
This is a keyword used to query data from more tables based on the relationship between the fields of
the tables. Keys play a major role when JOINs are used.
There are various types of join which can be used to retrieve data and it depends on the relationship
between tables.
Inner Join.
Inner join return rows when there is at least one match of rows between the tables.
Right Join.
Right join return rows which are common between the tables and all rows of Right hand side table.
Simply, it returns all the rows from the right hand side table even though there are no matches in the
left hand side table.
Left Join.
Left join return rows which are common between the tables and all rows of Left hand side table. Simply,
it returns all the rows from Left hand side table even though there are no matches in the Right hand side
table.
Full Join.
Interview Q & A
Full join return rows when there are matching rows in any one of the tables. This means, it returns all
the rows from the left hand side table and all the rows from the right hand side table.
Normalization is the process of minimizing redundancy and dependency by organizing fields and table of
a database. The main aim of Normalization is to add, delete or modify field that can be made in a single
table.
DeNormalization is a technique used to access the data from higher to lower normal forms of database.
It is also process of introducing redundancy into a table by incorporating data from the related tables.
The normal forms can be divided into 5 forms, and they are explained below -.
This should remove all the duplicate columns from the table. Creation of tables for the related data and
identification of unique columns.
Meeting all requirements of the first normal form. Placing the subsets of data in separate tables and
Creation of relationships between the tables using primary keys.
This should meet all requirements of 2NF. Removing the columns which are not dependent on primary
key constraints.
Meeting all the requirements of third normal form and it should not have multi- valued dependencies.
A view is a virtual table which consists of a subset of data contained in a table. Views are not virtually
present, and it takes less space to store. View can have data of one or more tables combined, and it is
depending on the relationship.
An index is performance tuning method of allowing faster retrieval of records from the table. An index
creates an entry for each value and it will be faster to retrieve data.
Unique Index.
This indexing does not allow the field to have duplicate values if the column is unique indexed. Unique
index can be applied automatically when primary key is defined.
Clustered Index.
This type of index reorders the physical order of the table and search based on the key values. Each
table can have only one clustered index.
NonClustered Index.
NonClustered Index does not alter the physical order of the table and maintains logical order of data.
Each table can have 999 nonclustered indexes.
A database Cursor is a control which enables traversal over the rows or records in the table. This can be
viewed as a pointer to one row in a set of rows. Cursor is very much useful for traversing such as
retrieval, addition and removal of database records.
Database Relationship is defined as the connection between the tables in a database. There are various
data basing relationships, and they are as follows:.
Self-Referencing Relationship.
A DB query is a code written in order to get the information back from the database. Query can be
designed in such a way that it matched with our expectation of the result set. Simply, a question to the
Database.
A subquery is a query within another query. The outer query is called as main query, and inner query is
called subquery. SubQuery is always executed first, and the result of subquery is passed on to the main
query.
A correlated subquery cannot be considered as independent query, but it can refer the column in a table
listed in the FROM the list of the main query.
Interview Q & A
A Non-Correlated sub query can be considered as independent query and the output of subquery are
substituted in the main query.
Stored Procedure is a function consists of many SQL statement to access the database system. Several
SQL statements are consolidated into a stored procedure and execute them whenever and wherever
required.
A DB trigger is a code or programs that automatically execute with response to some event on a table or
view in a database. Mainly, trigger helps to maintain the integrity of the database.
Example: When a new student is added to the student database, new records should be created in the
related tables like Exam, Score and Attendance tables.
DELETE command is used to remove rows from the table, and WHERE clause can be used for conditional
set of parameters. Commit and Rollback can be performed after delete statement.
TRUNCATE removes all rows from the table. Truncate operation cannot be rolled back.
25. What are local and global variables and their differences?
Local variables are the variables which can be used or exist inside the function. They are not known to
the other functions and those variables cannot be referred or used. Variables can be created whenever
that function is called.
Global variables are the variables which can be used or exist throughout the program. Same variable
declared in global cannot be used in functions. Global variables cannot be created whenever that
function is called.
Constraint can be used to specify the limit on the data type of table. Constraint can be specified while
creating or altering the table statement. Sample of constraint are.
NOT NULL.
CHECK.
DEFAULT.
UNIQUE.
PRIMARY KEY.
FOREIGN KEY.
Data Integrity defines the accuracy and consistency of data stored in a database. It can also define
integrity constraints to enforce business rules on the data when it is entered into the application or
database.
Auto increment keyword allows the user to create a unique number to be generated when a new record
is inserted into the table. AUTO INCREMENT keyword can be used in Oracle and IDENTITY keyword can
be used in SQL SERVER.
Clustered index is used for easy retrieval of data from the database by altering the way that the records
are stored. Database sorts out rows by the column which is set to be clustered index.
A nonclustered index does not alter the way it was stored but creates a complete separate object within
the table. It point back to the original table rows after searching.
Datawarehouse is a central repository of data from multiple sources of information. Those data are
consolidated, transformed and made available for the mining and online processing. Warehouse data
have a subset of data called Data Marts.
Self-join is set to be query used to compare to itself. This is used to compare values in a column with
other values in the same column in the same table. ALIAS ES can be used for the same table comparison.
Cross join defines as Cartesian product where number of rows in the first table multiplied by number of
rows in the second table. If suppose, WHERE clause is used in cross join then the query will work like an
INNER JOIN.
User defined functions are the functions written to use that logic whenever required. It is not necessary
to write the same logic several times. Instead, function can be called or executed whenever needed.
Scalar Functions.
Scalar returns unit, variant defined the return clause. Other two types return table as a return.
Interview Q & A
Collation is defined as set of rules that determine how character data can be sorted and compared. This
can be used to compare A and, other language characters and also depends on the width of the
characters.
Accent Sensitivity.
Stored procedure can be used as a modular programming – means create once, store and call for several
times whenever required. This supports faster execution instead of executing multiple queries. This
reduces network traffic and provides better security to the data.
Disadvantage is that it can be executed only in the Database and utilizes more memory in the database
server.
Online Transaction Processing (OLTP) manages transaction based applications which can be used for
data entry, data retrieval and data processing. OLTP makes data management simple and efficient.
Unlike OLAP systems goal of OLTP systems is serving real-time transactions.
SQL clause is defined to limit the result set by providing condition to the query. This usually filters some
rows from the whole set of records.
A stored procedure which calls by itself until it reaches some boundary condition. This recursive function
or procedure helps programmers to use the same set of code any number of times.
Interview Q & A
UNION operator is used to combine the results of two tables, and it eliminates duplicate rows from the
tables.
MINUS operator is used to return rows from the first query but not from the second query. Matching
records of first and second query and other rows from the first query will be displayed as a result set.
ALIAS name can be given to a table or column. This alias name can be referred in WHERE clause to
identify the table or column.
Example-.
Select [Link], [Link] from student st, Exam as Ex where [Link] = Ex. StudentID
Here, st refers to alias name for student table and Ex refers to alias name for exam table.
TRUNCATE removes all the rows from the table, and it cannot be rolled back. DROP command removes a
table from the database and operation cannot be rolled back.
Aggregate functions are used to evaluate mathematical calculation and return single values. This can be
calculated from the columns in a table. Scalar functions return a single value based on the input value.
Example -.
45. How can you create an empty table from an existing table?
Example will be -.
Here, we are copying student table to another table with the same structure with no rows copied.
Records can be fetched for both Odd and Even row numbers -.
Interview Q & A
Select studentId from (Select rowno, studentId from student) where mod(rowno,2)=0
Select studentId from (Select rowno, studentId from student) where mod(rowno,2)=1
49. What is the command used to fetch first 5 characters of the string?
Example -.