Feature 
Java  C# 
Lack of pointers 
Yes  Yes 
Single operator, the  dot  
Yes  Yes 
Unified type system 
Yes Yes 
(e.g. no varying range of the integer type) 
Boxing/un boxing of variables 
No 
Yes 
Enumerations No 
Yes 
Garbage collector 
Yes  Yes 
Exception handling (try, catch, finally) 
Yes  Yes 
Security model 
Yes  Yes 
Data encapsulation (class model) 
Yes  Yes 
Inheritance (from a single class only) 
Yes  Yes 
Polymorphism Yes 
Yes 
Fully object oriented  
Yes Yes 
(all functions and variables are contained in classes)
Implicit method overriding prohibited 
No 
Yes 
Implementation of Interfaces 
Yes  Yes 
Emulation of function pointers 
Yes Yes 
(with interfaces or  delegates ) 
Operator overloading 
No 
Yes 
Enforced type safety: 
   Checking of casts for validity 
Yes  Yes 
   Use of un initialized variables not permitted 
Yes  Yes 
   Array bounds checking 
Yes  Yes 
Overflow checking for arithmetic operations 
Yes  Yes 
Support of versioning 
No 
Yes 
Pre processor (conditional compilation) 
No 
Yes 
Automatic creation of documentation files 
Yes  Yes 
Interoperation with other languages (C++, VB) 
Yes  Yes 
Interoperation with native code 
Yes  Yes 
Table 8: Comparison of Java and C# 
94 




Java Web Hosting Application Development Using Java Technologies Hosting




 
TotalRoute.net Business web hosting division of Vision Web Hosting Inc. All rights reserved.