125 Basic C# Interview Questions and Answers
125 Basic C# Interview Questions and Answers
Below is the list of 125 basic C# interview
questions with their answers. These C# interview questions
and answers are very simple and straight-forward which cover the
basic concepts of C# mostly related to object oriented concepts. So if you are
preparing for C# interview, I will suggest you to must go through these 125 C#
basic interview questions and answers to revise your C# concepts. Here goes the
list of 125 basic C# interview questions and answers.
1. What is C#?
C# (pronounced "C sharp") is a
simple, modern, object-oriented, and type-safe programming language. It will
immediately be familiar to C and C++ programmers. C# combines the high
productivity of Rapid Application Development (RAD) languages.
2. What are the types of comment in C#?
There are 3 types of comments in C#.
Single line (//)
Multi (/* */)
Page/XML Comments (///).
3. What are the namespaces used in C#.NET?
Namespace is a logical grouping of class.
using System;
using System.Collections.Generic;
using System.Windows.Forms;
4. What are the characteristics of C#?
There are several characteristics of C# are :
Simple
Type safe
Flexible
Object oriented
Compatible
Consistent
Interoperable
Modern
5. What are the different categories of
inheritance?
Inheritance in Object Oriented Programming is
of four types:
Single inheritance: Contains one base class and one derived class.
Hierarchical inheritance: Contains one base class and multiple derived
classes of the same base class.
Multilevel inheritance: Contains a class derived from a derived class.
Multiple inheritance: Contains several base classes and a derived
class.
6. What are the basic concepts of object
oriented programming?
It is necessary to understand some of the
concepts used extensively in object oriented programming.These include:
Objects
Classes
Data abstraction and encapsulation
Inheritance
Polymorphism
Dynamic Binding
Message passing.
7. Can you inherit multiple interfaces?
Yes. Multiple interfaces may be inherited in
C#.
8. What is inheritance?
Inheritance is deriving the new class from the
already existing one.
9. Define scope?
Scope refers to the region of code in which a
variable may be accessed.
10. What is the difference between public,
static and void?
public: The keyword public is an access modifier that
tells the C# compiler that the Main method is accessible by anyone.
static: The keyword static declares that the Main
method is a global one and can be called without creating an instance of the
class. The compiler stores the address of the method as the entry point
and uses this information to begin execution before any objects
are created.
void: The keyword void is a type modifier that states
that the Main method does not return any value.
11. What are the modifiers in C#?
Abstract
Sealed
Virtual
Const
Event
Extern
Override
Readonly
Static
New
12. What are the types of access modifiers in
C#?
Access modifiers in C# are :
public
protect
private
internal
internal protect
13. What is boxing and unboxing?
Implicit conversion of value type to reference
type of a variable is known as BOXING, for example integer to object type
conversion.
Conversion of reference type variable back to
value type is called as UnBoxing.
14. What is object?
An object is an instance of a class. An object
is created by using operator new. A class that creates an object in memory will
contain the information about the values and behaviors (or
methods) of that specific object.
15. Where are the types of arrays in C#?
Single-Dimensional
Multidimensional
Jagged arrays.
16. What is the difference between Object and
Instance?
An instance of a user-defined type is called
an object. We can instantiate many objects from one class.
An object is an instance of a class.
17. Define destructors?
A destructor is called for a class object when
that object passes out of scope or is explicitly deleted.A destructors as the
name implies is used to destroy the objects that have been created by a
constructors.Like a constructor , the destructor is a member
function whose name is the same as the class name but
is precised by a tilde.
18. What is the use of enumerated data type?
An enumerated data type is another user defined
type which provides a way for attaching names to numbers thereby
increasing comprehensibility of the code. The enum keyword automatically
enumerates a list of words by assigning them values 0,1,2, and so on.
19. Define Constructors?
A constructor is a member function with the
same name as its class. The constructor is invoked whenever an object of its
associated class is created.It is called constructor because it constructs
the values of data members of the class.
20. What is encapsulation?
The wrapping up of data and functions into a
single unit (called class) is known as encapsulation. Encapsulation containing
and hiding information about an object, such as internal data structures
and code.
21.Does c# support multiple inheritance?
No,its impossible which accepts multi level
inheritance.
22. What is ENUM?
Enum are used to define constants.
23. What is a data set?
A DataSet is an in memory representation of
data loaded from any data source.
24. What is the difference between private and
public keyword?
Private: The private keyword is the default access
level and most restrictive among all other access levels. It gives least
permission to a type or type member. A private member is accessible only
within the body of the class in which it is declared.
Public: The public keyword is most liberal among all
access levels, with no restrictions to access what so ever. A public member
is accessible not only from within, but also from outside, and gives free
access to any member declared within the body or outside the body.
25. Define polymorphism?
Polymorphism means one name, multiple forms.
It allows us to have more than one function with the same name in a program.
It allows us to have overloading of operators so that an operation can
exhibit different behaviors in different instances.
26. What is Jagged Arrays?
A jagged array is an array whose elements are
arrays.
The elements of a jagged array can be of
different dimensions and sizes.
A jagged array is sometimes called an
array–of–arrays.
27. What is an abstract base class?
An abstract class is a class that is designed
to be specifically used as a base class. An abstract class contains at least
one pure virtual function.
28. How is method overriding different from
method overloading?
When overriding a method, you change the
behavior of the method for the derived class. Overloading a method simply
involves having another method with the same name within the class.
29. What is the difference between ref &
out parameters?
An argument passed to a ref parameter must
first be initialized. Compare this to an out parameter, whose argument does not
have to be explicitly initialized before being passed to an out parameter.
30. What is the use of using statement in C#?
The using statement is used to obtain a
resource, execute a statement, and then dispose of that resource.
31.What is serialization?
Serialization is the process of converting an object into a
stream of bytes.
De-serialization is the opposite process of creating an object
from a stream of bytes.
Serialization / De-serialization is mostly
used to transport objects.
32. What are the difference between Structure
and Class?
Structures are value type and Classes are
reference type
Structures can not have contractors or destructors.
Classes can have both contractors and
destructors.
Structures do not support Inheritance, while
Classes support Inheritance.
33. What is difference between Class And
Interface?
Class is logical representation of object. It
is collection of data and related sub procedures with defination.
Interface is also a class containg methods which is not
having any definations.Class does not support multiple inheritance.
But interface can support.
34. What is Delegates?
Delegates are a type-safe, object-oriented
implementation of function pointers and are used in many situations where a
component needs to call back to the component that is using it.
35. What is Authentication and Authorization?
Authentication is the process of identifying
users. Authentication is identifying/validating the user against the
credentials (username and password).
Authorization performs after authentication.
Authorization is the process of granting access to those users based on
identity.
Authorization allowing access of specific
resource to user.
36. What is a base class?
A class declaration may specify a base class
by following the class name with a colon and the name of the base class.
omitting a base class specification is the same as deriving from type
object.
37. Can “this” be used within a static method?
No ‘This’ cannot be used in a static method.
As only static variables/methods can be used in a static method.
38. What is difference between constants,
readonly and, static ?
Constants: The value can’t be changed.
Read-only: The value will be initialized only once from
the constructor of the class.
Static: Value can be initialized once.
39. What are the different types of statements
supported in C#?
C# supports several different kinds of
statements are
Block statements
Declaration statements
Expression statements
Selection statements
Iteration statements
Jump statements
Try catch statements
Checked and unchecked
Lock statement
40. What is an interface class?
It is an abstract class with public abstract
methods all of which must be implemented in the inherited classes.
41.What are value types and reference types?
Value types are stored in the Stack.
Examples : bool, byte, chat, decimal, double,
enum , float, int, long, sbyte, short, strut, uint, ulong, ushort.
Reference types are stored in the Heap.
Examples : class, delegate, interface, object,
string.
42. What is the difference between string
keyword and System.String class?
String keyword is an alias for Syste.String
class. Therefore, System.String and string keyword are the same, and you can
use whichever naming convention you prefer. The String class provides many
methods for safely creating, manipulating, and comparing strings.
43. What are the two data types available in
C#?
Value type
Reference type
44. What are the different types of Caching?
There are three types of Caching:
Output Caching: stores the responses from an asp.net page.
Fragment Caching: Only caches/stores the portion of page (User
Control)
Data Caching: is Programmatic way to Cache objects for
performance.
45. What is the difference between Custom
Control and User Control?
Custom Controls are compiled code (Dlls),
easier to use, difficult to create, and can be placed in toolbox. Drag and Drop
controls.
Attributes can be set visually at design time.
Can be used by Multiple Applications (If Shared Dlls), Even if Private can copy
to bin directory of web application add reference and use. Normally
designed to provide common functionality independent of consuming Application.
User Controls are similar to those of ASP
include files, easy to create, can not be placed in the toolbox and dragged -
dropped from it. A User Control is shared among the single application
files.
46. What is methods?
A method is a member that implements a
computation or action that can be performed by an object or class. Static
methods are accessed through the class. Instance methods are accessed
through instances of the class.
47. What is fields?
A field is a variable that is associated with
a class or with an instance of a class.
48. What is events?
An event is a member that enables a class or
object to provide notifications. An event is declared like a field except that
the declaration includes an event keyword and the type must be a delegate
type.
49. What is literals and their types?
Literals are value constants assigned to
variables in a program. C# supports several types of literals are
Integer literals
Real literals
Boolean literals
Single character literals
String literals
Backslash character literals
50. What is the difference between value type
and reference type?
Value types are stored on the stack and when a
value of a variable is assigned to another variable.
Reference types are stored on the heap, and when
an assignment between two reference variables occurs.
51. What are the features of c#?
C# is a simple and powerful programming
language for writing enterprise edition applications.
This is a hybrid of C++ and VB. It retains
many C++ features in the area statements,expressions, and operators and
incorporated the productivity of VB.
C# helps the developers to easily build the
web services that can be used across the Internet through any language, on any
platform.
C# helps the developers accomplishing with
fewer lines of code that will lead to the fewer errors in the code.
C# introduces the considerable improvement and
innovations in areas such as type safety,versioning. events and garbage
collections.
52. What are the types of errors?
Syntax error
Logic error
Runtime error
53. What is the difference between break and
continue statement?
The break statement is used to terminate the
current enclosing loop or conditional statements in which it appears. We have
already used the break statement to come out of switch statements.
The continue statement is used to alter the
sequence of execution. Instead of coming out of the loop like the break
statement did, the continue statement stops the current iteration and
simply returns control back to the top of the loop.
54. Define namespace?
The namespace are known as containers which
will be used to organize the hierarchical set of .Net classes.
55. What is a code group?
A code group is a set of assemblies that share
a security context.
56. What are sealed classes in C#?
The sealed modifier is used to prevent
derivation from a class. A compile-time error occurs if a sealed class is
specified as the base class of another class.
57. What is the difference between static and
instance methods?
A method declared with a static modifier is a
static method. A static method does not operate on a specific instance and can
only access static members.
A method declared without a static modifier is
an instance method. An instance method operates on a specific instance and can
access both static and instance members. The instance on which an instance
method was invoked can be explicitly accessed as this. It is an error to
refer to this in a static method.
58. What are the different types of variables
in C#?
Different types of variables used in C# are :
static variables
instance variable
value parameters
reference parameters
array elements
output parameters
local variables
59. What is meant by method overloading?
Method overloading permits multiple methods in
the same class to have the same name as long as they have unique signatures.
When compiling an invocation of an overloaded method, the compiler uses
overload resolution to determine the specific method to invoke.
60. What is parameters?
Parameters are used to pass values or variable
references to methods. The parameters of a method get their actual values from
the arguments that are specified when the method is invoked. There are
four kinds of parameters: value parameters, reference parameters, output parameters,
and parameter arrays.
61. Is C# is object oriented?
Yes, C# is an OO langauge in the tradition of
Java and C++.
62. What is the difference between Array and
Arraylist?
An array is a collection of the same type. The
size of the array is fixed in its declaration. A linked list is similar to an
array but it doesn’t have a limited size.
63. What are the special operators in C#?
C# supports the following special operators.
is (relational operator)
as (relational operator)
typeof (type operator)
sizeof (size operator)
new (object creator)
.dot (member access operator)
checked (overflow checking)
unchecked (prevention of overflow
checking)
64. What is meant by operators in c#?
An operator is a member that defines the
meaning of applying a particular expression operator to instances of a class.
Three kinds of operators can be defined: unary operators, binary
operators, and conversion operators. All operators must be declared as public
and static.
65. What is a parameterized type?
A parameterized type is a type that is
parameterized over another value or type.
66. What are the features of abstract class?
An abstract class cannot be instantiated, and
it is an error to use the new operator on an abstract class.
An abstract class is permitted (but not
required) to contain abstract methods and accessors.
An abstract class cannot be scaled.
67. What is the use of abstract keyword?
The modifier abstract is a keyword used with a
class, to indicate that this class cannot itself have direct instances or
objects, and it is intended to be only a 'base' class to other classes.
68. What is the use of goto statement?
The goto statement is also included in the C#
language. This goto can be used to jump from inside a loop to outside. But
jumping from outside to inside a loop is not allowed.
69. What is the difference between console and
window application?
A console application, which is designed to
run at the command line with no user interface.
A Windows application, which is designed to
run on a user’s desktop and has a user interface.
70. What is the use of return statement?
The return statement is associated with
procedures (methods or functions). On executing the return statement, the
system passes the control from the called procedure to the calling
procedure. This return statement is used for two purposes :
to return immediately to the caller of the
currently executed code
to return some value to the caller of the
currently executed code.
71. What is the difference between Array and LinkedList?
Array is a simple sequence of numbers which
are not concerned about each others positions. they are independent of each
others positions. adding,removing or modifying any array element is very
easy. Compared to arrays ,linked list is a comlicated sequence of numbers.
72. Does C# have a throws clause?
No, unlike Java, C# does not require the
developer to specify the exceptions that a method can throw.
73. Does C# support a variable number of
arguments?
Yes, uisng the params keyword. The arguments
are specified as a list of arguments of a specific type.
74. Can you override private virtual methods?
No, private methods are not accessible outside
the class.
75. What is a multi cast delegates?
Each delegate object holds reference to a single
method. However, it is possible for a delegate object to hold references of
and invoke multiple methods. Such delegate objects are called multicast
delegates or combinable delegates.
76. Which is an exclusive feature of C#?
Xml documentation.
77. Is using of exceptions in C# recommended?
Yes, exceptions are the recommended error
handling mechanism in .NET Framework.
78. What does a break statement do in switch
statements?
The break statement terminates the loop in
which it exists. It also changes the flow of the execution of a program.
In switch statements, the break statement is
used at the end of a case statement. The break statement is mandatory in C# and
it avoids the fall through of one case statement to another.
79. Is C# object oriented?
Yes, C# is an OO language in the tradition of
java and C++.
80. What is smart navigation?
The cursor position is maintained when the
page gets refreshed due to the server side validation and the page gets
refreshed.
81. What is the difference between CONST and
READONLY?
Both are meant for constant values. A const
field can only be initialized at the declaration of the field. A readonly field
can be initialized either at the declaration or.
82. Does C# have a throws clause?
No, unlike Java, C# does not require (or even
allow) the developer to specify the exceptions that a method can throw.
83. What are the different ways a method can
be overloaded?
Different parameter data types, different
number of parameters, different order of parameters.
84. Do events have return type?
No, events do not have return type.
85. What is event?
An event is an action performed based on
another method of the program.
An event is a delegate type dass member that
is used by an object or a class to provide a notification to other objects that
an event has occurred.
An event can be declared with the help of the
event keyword.
86. What is an identifier?
Identifiers are nothing but names given to
various entities uniquely identified in a program.
87. What are the different types of literals
in C#?
Boolean literals: True and False are literals of the Boolean
type that map to the true and false state, respectively.
Integer literals: Used to write values of types Int, ulnt,
long, and ulong.
Real literals: Used to write values of types float, double,
and dedmal.
Character literals: Represents a single character and usually
consists of a character in quotes, such as 'a'.
String literals: C# supports two types of string literals,
regular string literal and verbatim string literals. A regular string literal
consists of zero or more characters enclosed in double quotes, such as
"116110". A verbatim string literal consists of an @ character
followed by a double–quote character, such as ©"hello".
The Null literal: Represents the null–type.
88. What is meant by data encapsulation?
Data encapsulation, also referred to as data
hiding, is the mechanism whereby the implementation details of a class are kept
hidden from the user. The user can only perform a restricted set of
operations on the hidden members of the class by executing
special functions called methods.
89. Can you override private virtual methods?
No. Private methods are not accessible outside
the class.
90. What is the main difference between a
subprocedure and a function?
Subprocedures do not return a value, while
functions do.
91. How does C# differ from C++?
C# does not support #include statement. It
uses only using statement.
In C# , class definition does not use a
semicolon at the end.
C# does not support multiple code inheritance.
Casting in C# is much safer than in c++.
In C# switch can also be used on string
values.
Command line parameters array behave
differently in C# as compared to C++.
92. What is nested class?
A Nested classes are classes within classes.
A nested class is any class whose declaration
occurs within the body of another class or interface.
93. Can you have parameters for static
constructors?
No, static constructors cannot have
parameters.
94. Is String is Value Type or Reference Type
in C#?
String is an object(Reference Type).
95. Does C# provide copy constructor?
No, C# does not provide copy constructor.
96. Can a class or a struct have multiple
constructors?
Yes, a class or a struct can have multiple constructors.
Constructors in C# can be overloaded.
97. Can you create an instance of an
interface?
No, you cannot create an instance of an
interface.
98. Can an Interface contain fields?
No, an Interface cannot contain fields.
99. Can a class have static constructor?
Yes, a class can have static constructor.
Static constructors are called automatically, immediately before any static
fields are accessed, and are generally used to initialize static class
members. It is called automatically before the first instance is created or any
static members are referenced. Static constructors are called before
instance constructors. An example is shown below.
100. What is the main use of delegates in C#?
Delegates are mainly used to define call back
methods.
101. What is the difference between Shadowing
and Overriding?
Overriding redefines only the implementation
while shadowing redefines the whole element.
In overriding derived classes can refer the
parent class element by using "ME" keyword, but in shadowing you can
access it by "MYBASE".
102. Can events have access modifiers?
Yes, you can have access modifiers in events.
You can have events with the protected keyword, which will be accessible only
to inherited classes. You can have private events only for objects in that
class.
103. Why is the virtual keyword used in code?
The Virtual keyword is used in code to define
methods and the properties that can be overridden in derived classes.
104. What are constructors and destructors?
Constructors and destructors are special
methods.
Constructors and destructors are special
methods of every class.
Each class has its own constructor and
destructor and are called automatically when the instance of a class is created
or destroyed.
The constructor initializes all class members
whenever you access the class and the destructor destroys them when the objects
are not required anymore.
105. How can we suppress a finalize method?
GC.SuppressFinalize()
106. Does C# support a variable number of
arguments?
Yes, using the params keyword.
The arguments are specified as a list of
arguments of a specific type, e.g., int. For ultimate flexibility, the type can
be object.
The standard example of a method which uses
this approach is System.console.writeLine().
107.Which method will you call to start a
thread?
Start
108. What is Generic?
Generic help us to create flexible strong type
collection.
Generic basically seperate the logic from the
datatype in order maintain better reusability, better maintainability etc.
109. What are the different types of
polymorphism?
There are two types of polymorphism. They are:
Compile time Polymorphism
Run time Polymorphism
110. What is the difference between compile
time polymorphism and run time polymorphism?
Compile time Polymorphism
Compile time Polymorphism also known as method
overloading.
Method overloading means having two or more
methods with the same name but with different signatures.
Run time Polymorphism
Run time Polymorphism also known as method
overriding.
Method overriding means having two or more
methods with the same name , same signature but with different implementation.
111. Which namespace enables multithreaded
programming in XML?
System.Threading
112. Can we declare a block as static in c#?
No, because c# doesnot support static block,
but it supports static method.
113. Can we declare a method as sealed?
In C# a method can't be declared as sealed.
However when we override a method in a derived class, we can declare the
overridden method as sealed. By declaring it as sealed, we can avoid
further overriding of this method.
114. What Command is used to implement
properties in C#?
get & set access modifiers are used to
implement properties in c#.
115. What is static member?
The member defined as static which can be
invoked directly from the class level, rather than from its instance.
116. What is the syntax to inherit from a
class in C#?
When a class is derived from another class,
then the members of the base class become the members of the derived class.
The access modifier used while accessing
members of the base class specifies the access status of the base class members
inside the derived class.
The syntax to inherit a class from another
class In C# is as follows:
class MyNewClass : MyBaseClass
117. What is a basic difference between the
while loop and do while loop in C#?
The while loop tests its condition at the
beginning, which means that the enclosed set of statements run for zero or more
number of times if the condition evaluates to true. The do while loop
iterates a set of statements at least once and then checks the condition at
the end.
118. What is the main difference between a
subprocedure and a function?
Subprocedures do not return a value, while
functions do.
119. What are sealed classes in c#?
The sealed modifier is used to prevent
derivation from a class.
A compile time error occurs if a sealed class
is specified as the base class of another class.
120. What is the difference between class and
an Interface?
Abstract classes can have implementations for
some of its members, but the interface can't have implementation for any of
its members.
Interfaces cannot have fields where as an
abstract class can have fields.
An interface can inherit from another
interface only and cannot inherit from an abstract class, where as an abstract
class can inherit from another abstract class or another interface.
A class can inherit from multiple interfaces
at the same time, where as a class cannot inherit from multiple classes at the
same time.
Abstract class members can have access
modifiers where as interface members cannot have access modifiers.
121. What is the difference between an
abstract method & virtual method?
An Abstract method does not provide an
implementation and forces overriding to the deriving class (unless the deriving
class also an abstract class), where as the virtual method has an
implementation and leaves an option to override it in the deriving class. Thus
Virtual method has an implementation & provides the derived class with
the option of overriding it. Abstract method does not provide
an implementation & forces the derived class to override the method.
122. What is Static Method?
It is possible to declare a method as Static
provided that they don't attempt to access any instance data or other instance
methods.
123. What is a New modifier?
The new modifier hides a member of the base
class. C# supports only hide by signature.
124. What are the advantages of get and set
properties in C#?
The get property accessor is used to return
the property value.
The set property accessor is used to assign a
new value.
125. What are the difference between const and
readonly?
A const can not be static, while readonly can
be static.
A const need to be declared and initialized at
declaration only, while a readonly can be initialized at declaration or by the
code in the constructor.
What is
an application server?
As defined in Wikipedia, an
application server is a software engine that delivers applications toclient computers or devices. The application server runs your
server code. Some well known application servers are IIS (Microsoft), WebLogic
Server (BEA), JBoss (Red Hat), WebSphere (IBM).
Compare
C# and VB.NET
What is
a base class and derived class?
A class is a template for creating an object. The class from which
other classes derive fundamental functionality is called a base class. For e.g.
If Class Y derives from Class X, then Class X is a base class.
The class which derives functionality from a base class is called
a derived class. If Class Y derives from Class X, then Class Y is a derived
class.
What is
an extender class?
An extender class allows
you to extend the functionality of an existing control. It is used in Windows
forms applications to add properties to controls.
What is
inheritance?
Inheritance represents the relationship between two classes where
one type derives functionality from a second type and then extends it by adding
new methods, properties, events, fields and constants.
C# support two types of inheritance:
· Implementation inheritance
· Interface inheritance
What is
implementation and interface inheritance?
When a class (type) is
derived from another class(type) such that it inherits all the members of the
base type it is Implementation Inheritance.
When a type (class or a
struct) inherits only the signatures of the functions from another type it is
Interface Inheritance.
In general Classes can be
derived from another class, hence support Implementation inheritance. At the
same time Classes can also be derived from one or more interfaces. Hence they
support Interface inheritance.
What is
inheritance hierarchy?
The class which derives functionality from a base class is called
a derived class. A derived class can also act as a base class for another
class. Thus it is possible to create a tree-like structure that illustrates the
relationship between all related classes. This structure is known as the
inheritance hierarchy.
How do
you prevent a class from being inherited?
In VB.NET you use the NotInheritable modifier to prevent programmers from using the class as a base
class. In C#, use the sealed keyword.
When
should you use inheritance?
Define
Overriding?
Overriding is a concept where a method in a derived class uses the
same name, return type, and arguments as a method in its base class. In other
words, if the derived class contains its own implementation of the method
rather than using the method in the base class, the process is called
overriding.
Can you
use multiple inheritance in .NET?
.NET supports only single
inheritance. However the purpose is accomplished using multiple interfaces.
Why
don’t we have multiple inheritance in .NET?
There are several reasons
for this. In simple words, the efforts are more, benefits are less. Different
languages have different implementation requirements of multiple inheritance.
So in order to implement multiple inheritance, we need to study the implementation
aspects of all the languages that are CLR compliant and then implement a common
methodology of implementing it. This is too much of efforts. Moreover multiple
interface inheritance very much covers the benefits that multiple inheritance
has.
What is
an Interface?
An interface is a standard
or contract that contains only the signatures of methods or events. The
implementation is done in the class that inherits from this interface.
Interfaces are primarily used to set a common standard or contract.
When
should you use abstract class vs interface or What is the difference between an
abstract class and interface?
What
are events and delegates?
An event is a message sent by a control to notify the occurrence
of an action. However it is not known which object receives the event. For this
reason, .NET provides a special type called Delegate which acts as an
intermediary between the sender object and receiver object.
What is
business logic?
It is the functionality
which handles the exchange of information between database and a user
interface.
What is
a component?
Component is a group of logically related classes and methods. A
component is a class that implements the IComponent interface or uses a class
that implements IComponent interface.
What is
a control?
A control is a component that provides user-interface (UI)
capabilities.
What
are the differences between a control and a component?
What are
design patterns?
Design patterns are common solutions to common design problems.
What is
a connection pool?
A connection pool is a ‘collection of connections’ which are
shared between the clients requesting one. Once the connection is closed, it
returns back to the pool. This allows the connections to be reused.
What is
a flat file?
A flat file is the name given to text, which can be read or
written only sequentially.
What
are functional and non-functional requirements?
Functional requirements
defines the behavior of a system whereas non-functional requirements specify
how the system should behave; in other words they specify the quality
requirements and judge the behavior of a system.
E.g.
Functional - Display a
chart which shows the maximum number of products sold in a region.
Non-functional – The data
presented in the chart must be updated every 5 minutes.
What is
the global assembly cache (GAC)?
GAC is a machine-wide cache of assemblies that allows .NET
applications to share libraries. GAC solves some of the problems associated
with dll’s (DLL Hell).
What is
a stack? What is a heap? Give the differences between the two?
Stack is a place in the memory where value types are stored. Heap
is a place in the memory where the reference types are stored.
What is
instrumentation?
It is the ability to monitor an application so that information
about the application’s progress, performance and status can be captured and
reported.
What is
code review?
The process of examining the source code generally through a
peer, to verify it against best practices.
What is
logging?
Logging is the process of persisting information about the status
of an application.
What
are mock-ups?
Mock-ups are a set of designs in the form of screens, diagrams,
snapshots etc., that helps verify the design and acquire feedback about the
application’s requirements and use cases, at an early stage of the design
process.
What is
a Form?
A form is a representation of any window displayed in your
application. Form can be used to create standard, borderless, floating, modal
windows.
What is
a multiple-document interface(MDI)?
A user interface container that enables a user to work with more
than one document at a time. E.g. Microsoft Excel.
What is
a single-document interface (SDI) ?
A user interface that is created to manage graphical user
interfaces and controls into single windows. E.g. Microsoft Word
What is
BLOB ?
A BLOB
(binary large object) is a large item such as an image or an exe
represented in binary form.
What is
ClickOnce?
ClickOnce is a new deployment technology that allows you to create
and publish self-updating applications that can be installed and run with minimal user
interaction.
What is
object role modeling (ORM) ?
It is a logical model for designing and querying database models.
There are various ORM tools in the market like CaseTalk, Microsoft Visio for Enterprise Architects,
Infagon etc.
What is
a private assembly?
A private assembly is local to the installation directory of an
application and is used only by that application.
What is
a shared assembly?
A shared assembly is kept in the global assembly cache (GAC) and
can be used by one or more applications on a machine.
What is
the difference between user and custom controls?
User controls are easier to
create whereas custom controls require extra effort.
User controls are used when
the layout is static whereas custom controls are used in dynamic layouts.
A user control cannot be
added to the toolbox whereas a custom control can be.
A separate copy of a user
control is required in every application that uses it whereas since custom controls
are stored in the GAC, only a single copy can be used by all applications.
Where
do custom controls reside?
In the global assembly
cache (GAC).
What is
a third-party control ?
A third-party control is one that is not created by the owners of
a project. They are usually used to save time and resources and reuse the
functionality developed by others (third-party).
What is
a binary formatter?
Binary formatter is used to
serialize and deserialize an object in binary format.
What is
Boxing/Unboxing?
Boxing is used to convert
value types to object.
E.g. int x = 1;
object obj = x ;
Unboxing is used to convert
the object back to the value type.
E.g. int y = (int)obj;
Boxing/unboxing is quiet an
expensive operation.
What is
a COM Callable Wrapper (CCW)?
CCW is a wrapper created by
the common language runtime(CLR) that enables COM components to access .NET
objects.
What is
a Runtime Callable Wrapper (RCW)?
RCW is a wrapper created by
the common language runtime(CLR) to enable .NET components to call COM components.
What is
a digital signature?
A digital signature is an
electronic signature used to verify/gurantee the identity of the individual who
is sending the message.
What is
garbage collection?
Garbage collection is the
process of managing the allocation and release of memory in your applications.
Read this article for more information.
What is
globalization?
Globalization is the
process of customizing applications that support multiple cultures and regions.
What is
localization?
Localization is the process
of customizing applications that support a given culture and regions.
What is
MIME?
The definition of MIME or
Multipurpose Internet Mail Extensions as stated in MSDN is “MIME is a standard
that can be used to include content of various types in a single message. MIME
extends the Simple Mail Transfer Protocol (SMTP) format of mail messages to
include multiple content, both textual and non-textual. Parts of the message may
be images, audio, or text in different character sets. The MIME standard
derives from RFCs such as 2821 and 2822”
No comments:
Post a Comment