Misunderstood wrote:
Ver... To be object oriented doesn't just mean the language can be oriented around objects
.
I agree.
Misunderstood wrote:
It has to support polymorphism (
http://en.wikipedia.org/wiki/Polymorphi ... science%29)
Which mean you can have one method do different things depending on the types of variables passed to it. In java(and other languages like C++) this is done with overloading a method.
How could this be done with vb? Passing variants and looking at the type?...I guess you could call that overloading, but I wouldn't.
You can do it with variants, or you could send the variable pointer instead... There are many different ways this could be done..
Your link explained this rather well.. The Variant data type is clearly an example of overloading.. Though there are many different ways to perform type polymorphism in VB.
Misunderstood wrote:
It also needs to support Encapsulation, which is basically the ability to have Abstract Data types, also known as information hiding. In my opinion, for it to be encapsulation, only the operations should be visible. The data and the implementation of the operations should be hidden.
I don't think VB can do this(I know it can have classes and you can implement classes) but I am not sure, you would probably know more about that.
Vb can certainly do this.. For example. Look at your controls.. the actual variables are hidden from view by everything else (besides the control class).. You can only modify those variables (if they are private) by using the properties or methods.
Misunderstood wrote:
It also needs inheritance, which is the ability to inherit methods and data from other classes. I am not sure if VB has this or not.
VB doesn't have an easy way of doing this, but it is possible.. Best to look this up on Google.
(You'll find many results)
Misunderstood wrote:
How do you consider VB object oriented? I would like to know in case I'm wrong
I consider VB to be object oriented, because almost every aspect of VB is using objects.. Forms are objects.. Controls are objects.. They all have private variables with public and private methods... events.. etc.
I don't consider myself the end all/be all/god of the subject.. I have my opinions, and they don't necessarily differ from others, except when they say that something isn't possible (with regard to OOP) in VB.. There may be work-arounds to get the job done, but I have yet to find something completely undoable in VB.
Consider everything I wrote as an opinion on the topic, and I'm sure we won't have to argue about it.