Microsoft .NET platform defines a standard around
which a system can be developed. Microsoft .NET platform provides countless
opportunities for different services and systems to interact, allowing
programmers to develop powerful solutions for the internet. A major theme of
Microsoft .NET platform is the idea of Web services, allowing software to
communicate directly with other software using Internet technologies. The .NET
Framework and Visual Studio.NET, two more core aspects of this initiative,
provide a multi-language environment in which developers can create Web services
and other kinds of applications.
In OOPS, it refers to the capability of objects to react differently to the same method. Polymorphism can be implemented in the Java language in the form of multiple methods having the same name. Java code uses a late-binding technique to support polymorphism; the method to be invoked is decided at runtime.
Garbage collection is one of the most important feature of Java. Garbage collection is also called automatic memory management as JVM automatically removes the unused variables/objects (value is null) from the memory. User program can’t directly free the object from memory, instead it is the job of the garbage collector to automatically free the objects that are no longer referenced by a program. Every class inherits finalize() method from java.lang.Object, the finalize() method is called by garbage collector when it determines no more references to the object exists. In Java, it is good idea to explicitly assign null into a variable when no more in use. I Java on calling System.gc() and Runtime.gc(), JVM tries to recycle the unused objects, but there is no guarantee when all the objects will garbage collected.
Serialization is a way of flattening, pickling, sizzling,
serializing, or freeze-drying Objects so that they can be stored on
disk, and later read back and reconstituted, with all the links between
Objects intact
Object serialization is the process of saving an object's state to a
sequence of bytes, as well as the process of rebuilding those bytes into a
live object at some future time
Synchronization is a process of controlling the access of shared resources by
the multiple threads in such a manner that only one thread can access one
resource at a time. In non synchronized multithreaded application, it is
possible for one thread to modify a shared object while another thread is in the
process of using or updating the object's value. Synchronization prevents such
type of data corruption.