C# is NOT a pure object oriented programming language.
Object oriented language should support:
- Encapsulation
- Polymorphism
- Inheritance
- All predefined type are objects
- All operations performed by sending messages to objects
- All user-defined types are objects
C# does not support point#4 & 5.
In C#, predefined type can be struct. Example: integer > public struct Int32
So C# does not qualify as pure object oriented language.
Reference:
- http://www.jvoegele.com/software/langcomp.html
- http://stackoverflow.com/questions/3356464/is-c-sharp-a-100-object-oriented-programming-language
No comments:
Post a Comment