Software
.NET :Solving the Multiple Inheritance Issue Under .NET Platform
.NET platform does not support multiple inheritance. Do not confuse multilevel inheritance with multiple inheritance. With multiple inheritance we can have a subclass that inherits from two classes at the same time.
Let?s suppose we have an application that has a class Customers and another class Vendors. If you wanted to combine these two classes into one CustomerVendor class it would be a combination of Customers and Vendors just like the diagram below.
Please copy the following URL into your browser to view the diagram: http://www.vbprofs.com/images/Article Images/ThomasArt1.gif
In the above diagram we see how the CustomerVendor class inherits from both of those classes.
Multiple inheritance is complex and can be dangerous. The advantages of code re-usage prevail over complexity is up to your choice.
Multiple inheritance is not supported by VB.NET or .Net platform. Instead of multiple inheritance we can use multiple interfaces to achieve similar effect to multiple inheritance.
In VB.NET all objects have a primary or native interface, which is composed of properties, events, methods or member variables declared using Public keyword. Objects can implement also secondary interfaces by using Implement keyword.
Sometimes it is helpful for an object to have more than one interface, allowing us to interact with the object in different ways. Inheritance allow us to create subclasses that are a specialized case of the base class.
Example
Sometimes we have a group of objects that are not the similar, but we want to handle them the same manner. We want all the objects to act as if they are the same, even though they are different.
We can have some different objects in an application, such as customer, product, invoice etc. Each object would have a default interface appropriate to each individual object, and each of them is a different class. No natural inheritance is implied between these classes. Let?s suppose we want to print a document for each type of object. In this case we?d like to make them all act as printable object. To accomplish this we can define a generic interface that would enable generating a printed document. By implementing a common interface we are able to write a routine that accepts any object that implements a printed document.
To conclude, by implementing multiple interfaces in VB.NET , we can achieve a similar effect to that of multiple inheritance.
Thomas is an experienced Visual Basic developer, with expertise of 7+ years developing especially financial applications. His main IT skills are VB, SQL, Crystal Reports - should you need a Visual Basic developer for your projects feel free to contact Thomas through his personal website Kaloyani.com or through VBprofs.com - the newest Visual Basic and VB.NET resources portal.
Thomas Kaloyani
Similar articles
10 Simple Ways To Speed Up Windows XP
I've just finished setting up a new PC for a friend and I think some of you will be interested in some of the tweaks I make to all of my PCs to make them just a little bit quicker. Read more →13 Comparisons of Vista vs Tiger
Competitive and fast are two terms that are applicable to the world of computers. Constantly changing and evolving computer systems bring many advantages to the users and techies alike. Read more →3d Studio Max
3d Studio Max is the de facto industry standard animation and modeling software.3D Studio Max is quite expensive so it can be out of the reach of the pockets of a lot of amateurs; however the software is worth every penny to a serious animation professional as nothing comes close for functionality, versatility and sheer features. Read more →5 Simple Secrets to Creating Successful Software Application that Exceeds Customer's Expectations
We all have worked on different aspects of software applications. Some are big hits and others are not so successful. We all want ours to be the killer software application people love to use and talk about. Read more →Aphorism
However far modern science and techniques have fallen short of their inherent possibilities, they have taught mankind at least one lesson: Nothing is impossible.
