vb.net framework interview questions
1.Briefly describe the major
components of the .NET Framework and describe what each component does.
The .NET Framework consists of two
primary parts: the common language runtime, which manages application
execution, enforces type safety, and manages memory reclamation, and the .NET
base class library, which consists of thousands of pre developed classes that
can be used to build applications.
2.What is reference type and value
type?
A value type holds all of the data
represented by the variable within the variable itself. A reference type
contains a reference to a memory address that holds the data instead of the
actual data itself.
3.How do you enable your application
to use .NET base class library members without referencing their fully qualified
names?
Use the Imports keyword (Visual
Basic .NET) or the using keyword (Visual C#) to make a .NET Framework namespace
visible to your application.
4.Briefly describe how garbage
collection works.
The garbage collector is a thread
that runs in the background of managed .NET applications. It constantly traces
the reference tree and attempts to find objects that are no longer referenced.
When a non referenced object is found, its memory is reclaimed for later use.
5.Briefly describe what members are,
and list the four types of members.
Members are the parts of a class
or a structure that hold data or implement functionality. The primary member
types are fields, properties, methods, and events.
6.Explain what constructors and
destructors are and describe what they are used for.
The constructor is the method that
initializes a class or structure and is run when a type is first instantiated.
It is used to set default values and perform other tasks required by the class.
A destructor is the method that is run as the object is being reclaimed by
garbage collection. It contains any code that is required for cleanup of the
object.
7.Briefly explain the difference
between Public (public), Friend (internal), and Private (private) access levels
as they apply to user-defined types and members.
In user-defined types, Public
(public) classes can be instantiated by any element of the application. Friend
(internal) classes can be instantiated only by members of the same assembly,
and Private (private) classes can be instantiated only by themselves or types
they are nested in. Likewise, a Public (public) member can be accessed by any
client in the application, a Friend (internal) member can be accessed only from
members of the same assembly, and Private (private) members can be accessed
only from within the type.
8.Do you need to instantiate a class
before accessing a Shared (static) member? Why or why not?
Because a Shared (static) member
belongs to the type rather than to any instance of the type, you can access the
member without first creating an instance of the type.
9.Briefly describe how a class is
similar to a structure. How are they different?
Both classes and structures can
have members such as methods, properties, and fields, both use a constructor
for initialization and both inherit from System.Object. Both classes and
structures can be used to model real world objects.
Classes are reference types, and the memory that holds class instances is
allocated on the heap. Structures are value types, and the memory that holds
structure instances is allocated on the stack.
10.What are the development tools and
operational systems that .NET provides to build, deploy, and integrate
applications?
.NET provides the following
development tools and operational systems:
a. Smart Client Software
b. .NET Server Infrastructure
c. XML Web Services
d. Microsoft Visual Studio .NET and the .NET Framework
b. .NET Server Infrastructure
c. XML Web Services
d. Microsoft Visual Studio .NET and the .NET Framework
11.What are the functions of the
components of the common language runtime?
The components of the common
language runtime provide the run-time environment and run-time services for
.NET applications. These components also load the IL code of a .NET application
into the runtime, compile the IL code into native code, execute the code, and
enforce security. In addition, these components implement type safety and
provide
12.What are the different types of
assemblies?
The different types of assemblies
include
a. Static and dynamic assemblies
b. Private and shared assemblies
c. Single-file and multiple-file assemblies
b. Private and shared assemblies
c. Single-file and multiple-file assemblies
13.What are the different types of
configuration files that the .NET Framework provides?
a. Machine configuration file.
This file is located in the %runtime installation path%\Config directory. The
machine configuration file contains settings that affect all the applications
that run on the machine.
b. Application configuration file.
This file contains the settings required to configure an individual application. ASP.NET configuration files are named Web.config, and application configuration files are named App.exe.config, where App.exe is the name of the executable.
c. Security configuration file.
The security configuration files contain security permissions for a hierarchy of code groups. The security configuration files define the enterprise-level, machine-level, and user-level security policies. The Enterprisesec.config file defines the security policies for the enterprise. The machine-level Security.config file defines the security policy for the machine, whereas the user-level Security.config file defines the security policy for a user.
b. Application configuration file.
This file contains the settings required to configure an individual application. ASP.NET configuration files are named Web.config, and application configuration files are named App.exe.config, where App.exe is the name of the executable.
c. Security configuration file.
The security configuration files contain security permissions for a hierarchy of code groups. The security configuration files define the enterprise-level, machine-level, and user-level security policies. The Enterprisesec.config file defines the security policies for the enterprise. The machine-level Security.config file defines the security policy for the machine, whereas the user-level Security.config file defines the security policy for a user.
14.What are application domains?
Application domains are the
boundaries within which applications run. A process can contain multiple application domains. Application domains provide an isolated environment to
applications that is similar to the isolation provided by processes. An
application running inside one application domain cannot directly access the
code running inside another application domain. To access the code running in
another application domain, an application needs to use a proxy.
15.What is boxing?
The act of wrapping a Value type,
such as an Integer, inside an object so that it can be treated like a Reference
type.
16.What is Cust?
An explicit conversion from one
type to another.
17.What is Common Language Runtime
(CLR) ?
The environment in which managed
code executes. The common language runtime provides just-in-time compilation,
enforces type safety, and manages memory through garbage collection.
18.What is Common Type System (CTS) ?
A set of types that are used by
all .NET languages, thus ensuring .NET language type compatibility.
19.What is Explicit and Implicit
Conversion ?
Explicit conversion of one type to
another that cannot be performed automatically. An explicit conversion usually
presents some danger of a failed conversion or a loss of data.
Implicit conversion between types that can be performed automatically by the common language runtime. An implicit conversion will always succeed and never pose a danger of data loss.
20.What is Garbage Collector (GC)?
Automatic memory management
provided by the common language runtime. Unused memory is automatically
reclaimed by garbage collection without interaction with the application.
21.What is Manage Code ?
Code that runs under the common
language runtime. The common language runtime handles many tasks that would
formerly have been handled in the application’s executable. Managed code solves
the Windows programming problems of component registration and versioning
(sometimes called DLL Hell) because managed code contains all the versioning
and type information that the common language runtime needs to run the
application. The common language runtime handles registration dynamically at
run time rather than statically through the system registry, as is done with
applications based on the Component Object Model (COM).
22.What is Microsoft
Intermediate Language (MSIL) ?
A low-level language that is
just-in-time compiled to native code at run time. All .NET assemblies are
represented in the MSIL.
23.What is unmanaged
code ?
Code that is not managed by the
common language runtime. Unmanaged code is not checked for type-safety and must
be used with extreme care.
24.What is Assembly?
Assemblies are the fundamental
building blocks of a .NET Framework application. They contain the types and
resources that make up an application and describe those contained types to the
common language runtime. Assemblies enable code reuse, version control,
security, and deployment.
Put simply, an assembly is a project that compiles to an executable file or to a DLL file. Although .NET .exe and .dll files resemble other .exe and .dll files externally, the internal structure of an assembly is quite different from that of .exe or .dll files created with earlier development tools. An assembly consists of four internal parts:
The assembly manifest, or metadata. This contains information about the assembly that is exposed to the common language runtime.
25.What is Native Image Generator
(Ngen.exe)?
The Native Image Generator utility
(Ngen.exe) allows you to run the JIT compiler on Your assembly's MSIL and
generate native machine code which is cached to disk. Running Ngen.exe on an
assembly potentially allows the assembly to load and execute faster, because it
restore code and data structure from the native image cache rather than
generating them dynamically.
26.What is GAC?
Global Assembly Cache
(GAC) A machine-wide cache that stores assemblies that have been
specifically designated to be shared between several applications.
No comments:
Post a Comment