What is an interface and what is an abstract class? Please, expand by examples of using both. Explain why.
.NET Interview Questions and Answers
(Continued from previous question...)
What is an interface and what is an abstract class? Please, expand by examples of using both. Explain why.
Answers1:
In a interface class, all methods are abstract without implementation where as in an abstract class some methods we can define concrete. In interface, no accessibility modifiers are allowed. An abstract class may have accessibility modifiers. Interface and abstract class are basically a set of rules which u have to follow in case u r using them(inheriting them).
Answers2:
Abstract classes are closely related to interfaces. They are classes that cannot be instantiated, and are frequently either partially implemented, or not at all implemented. One key difference between abstract classes and interfaces is that a class may implement an unlimited number of interfaces, but may inherit from only one abstract (or any other kind of) class. A class that is derived from an abstract class may still implement interfaces. Abstract classes are useful when creating components because they allow you specify an invariant level of functionality in some methods, but leave the implementation of other methods until a specific implementation of that class is needed. They also version well, because if additional functionality is needed in derived classes, it can be added to the base class without breaking code.
Answers3:
Abstract Classes
An abstract class is the one that is not used to create objects. An abstract class is designed to act as a base class (to be inherited by other classes). Abstract class is a design concept in program development and provides a base upon which other classes are built. Abstract classes are similar to interfaces. After declaring an abstract class, it cannot be instantiated on it’s own, it must be inherited. Like interfaces, abstract classes can specify members that must be implemented in inheriting classes. Unlike interfaces, a class can inherit only one abstract class. Abstract classes can only specify members that should be implemented by all inheriting classes.
Answers4:
An interface looks like a class, but has no implementation. They’re great for putting together plug-n-play like architectures where components can be interchanged at will. Think Firefox Plug-in extension implementation.
If you need to change your design, make it an interface. However, you may have abstract classes that provide some default behavior. Abstract classes are excellent candidates inside of application frameworks.
Answers5:
One additional key difference between interfaces and abstract classes (possibly the most important one) is that multiple interfaces can be implemented by a class, but only one abstract class can be inherited by any single class.
Some background on this: C++ supports multiple inheritance, but C# does not. Multiple inheritance in C++ has always be controversial, because the resolution of multiple inherited implementations of the same method from different base classes is hard to control and anticipate. C# decided to avoid this problem by allowing a class to implement multiple interfaces, which do not contain method implementations, but restricting a class to have at most a single parent class. Although this can result in redundant implementations of the same method when different classes implement the same interface, it is still an excellent compromise.
Another difference between interfaces and abstract classes is that an interface can be implemented by an abstract class, but no class, abstract or otherwise, can be inherited by an interface.
Answers6:
What is an Abstract class?
An abstract class is a special kind of class that cannot be instantiated. So the question is why we need a class that cannot be instantiated? An abstract class is only to be sub-classed (inherited from). In other words, it only allows other classes to inherit from it but cannot be instantiated. The advantage is that it enforces certain hierarchies for all the subclasses. In simple words, it is a kind of contract that forces all the subclasses to carry on the same hierarchies or standards.
What is an Interface?
An interface is not a class. It is an entity that is defined by the word Interface. An interface has no implementation; it only has the signature or in other words, just the definition of the methods without the body. As one of the similarities to Abstract class, it is a contract that is used to define hierarchies for all subclasses or it defines specific set of methods and their arguments. The main difference between them is that a class can implement more than one interface but can only inherit from one abstract class. Since C# doesn’t support multiple inheritance, interfaces are used to implement multiple inheritance.
(Continued on next question...)
Other Interview Questions
- What is .NET?
- How many languages .NET is supporting now?
- How is .NET able to support multiple languages?
- How ASP .NET different from ASP?
- What is smart navigation?
- What is view state?
- How do you validate the controls in an ASP .NET page?
- Can the validation be done in the server side? Or this can be done only in the Client side?
- How to manage pagination in a page?
- What is ADO .NET and what is difference between ADO and ADO.NET?
- Observations between VB.NET and VC#.NET?
- Advantages of migrating to VB.NET ?
- Advantages of VB.NET
- Using ActiveX Control in .Net
- What is Machine.config?
- What is Web.config?
- What is the difference between ADO and ADO.NET?
- What is the difference between VB and VB.NET?
- What is a Strong Name?
- What is a Manifest?
- Creating a Key Pair?
- What is the difference between "using System.Data;" and directly adding the reference from "Add References Dialog Box"?
- What is GAC?
- What is a Metadata?
- What is managed code and managed data?
- What is .NET / .NET Framework?
- What is Reflection?
- What is "Common Type System" (CTS)?
- What is "Common Language Specification" (CLS)?
- What is "Common Language Runtime" (CLR)?
- What are Attributes?
- What are the Types of Assemblies?
- What is an Intermediate language?
- ASP.NET Authentication Providers and IIS Security
- What is the difference between ASP and ASP.NET?
- Using COM Component in .Net
- What is an assembly?
- What is a Web Service?
- webFarm Vs webGardens
- What is the difference between a namespace and assembly name?
- What’s a Windows process?
- What’s typical about a Windows process in regards to memory allocation?
- Explain what relationship is between a Process, Application Domain, and Application?
- What are possible implementations of distributed applications in .NET?
- What are the consideration in deciding to use .NET Remoting or ASP.NET Web Services?
- What’s a proxy of the server object in .NET Remoting?
- What are remotable objects in .NET Remoting?
- What are channels in .NET Remoting?
- What security measures exist for .NET Remoting in System.Runtime.Remoting?
- What is a formatter?
- Choosing between HTTP and TCP for protocols and Binary and SOAP for formatters, what are the trade-offs?
- What’s SingleCall activation mode used for?
- What’s Singleton activation mode?
- How do you define the lease of the object?
- Can you configure a .NET Remoting object via XML file?
- How can you automatically generate interface for the remotable object in .NET with Microsoft tools?
- What is Delegation?
- What is "Microsoft Intermediate Language" (MSIL)?
- Differences between Datagrid, Datalist and Repeater?
- I am constantly writing the drawing procedures with System.Drawing.Graphics, but having to use the try and dispose blocks is too time-consuming with Graphics objects. Can I automate this?
- How do you trigger the Paint event in System.Drawing?
- With these events, why wouldn’t Microsoft combine Invalidate and Paint, so that you wouldn’t have to tell it to repaint, and then to force it to repaint?
- How can you assign an RGB color to a System.Drawing.Color object?
- What class does Icon derive from? Isn’t it just a Bitmap with a wrapper name around it?
- Before in my VB app I would just load the icons from DLL. How can I load the icons provided by .NET dynamically?
- When displaying fonts, what’s the difference between pixels, points and ems?
- What is the difference between VB 6 and VB.NET?
- What are the authentication methods in .NET?
- What is Serialization in .NET?
- What’s the use of System.Diagnostics.Process class?
- Difference Abstract class and Interface
- re-clarification of object based:
- How to achieve Polymorphism in VB.Net?
- Difference between Class And Interface
- What doesu mean by .NET framework?
- What is assembly?
- What is namespaces?
- NET framework overview
- What is the base class of .NET?
- Explain assemblies.
- Name some of the languages .NET support?
- ADO.NET features? Benefits? Drawbacks?
- How many types of exception handlers are there in .NET?
- Difference between Panel and GroupBox classes?
- What is the base class of Button control?
- What is Response object? How is it related to ASP’s Response object?
- What is IIS? Have you used it?
- Main differences between ASP and ASP.NET.
- What are the advantages and drawbacks of using ADO.NET?
- Why The JavaScript Validation Not Run on the Asp.Net Button But Run SuccessFully On The HTML Button
- what is the difference between user control an custom control? advantages/disadvantages?
- What’s the difference between Response.Write() andResponse.Output.Write()?
- What is the use of ErrorProvider Control?
- What is CLR?
- What is Delegate and what is it used for ?
- How is meant by DLL ?
- Which DLL translate XML to SQL in IIS?
- Can anyone tell me about Secure Socket Layer? How to make use of the technology?
- What is the Differnce Between Response.write & response.output.Write
- Which dll is required to translate XML to SQL in IIS ?
- What is an interface and what is an abstract class? Please, expand by examples of using both. Explain why.
- What is serialization, how it works in .NET?
- What should one do to make class serializable?
- What exactly is being serialized when you perform serialization?
- How does output caching work in ASP.NET?
- What is connection pooling and how do you make your application use it?
- What are different methods of session maintenance in ASP.NET?
- What is Viewstate?
- Can any object be stored in a Viewstate?
- What should you do to store an object in a Viewstate?
- Explain how Viewstate is being formed and how it’s stored on client.
- What do you know about ADO.NET’s objects and methods?
- Explain DataSet.AcceptChanges and DataAdapter.Update methods.
- When we go for html server controls and when we go for web server controls?
- ASP.NET interview questions only (1)
- ASP.NET interview questions only (2)
- ASP.NET interview questions only (3)
|