1)Layout Manager-It is an interface that determines the size and position of the component within the container using the following classes: * BorderLayout * BoxLayout * CardLayout * FlowLayout * GridBagLayout * GridLayout * GroupLayout * SpringLayout
2)Dynamic Method Dispatch-It is a technique which can be used to execute the overridden method at runtime or you can say that it is the process through which Java Runtime system determines which method implementation is to call in an inheritance hierarchy.
3)Thread Synchronization-Threads commonly share the same memory space area, hence they can share the resources. Threads commonly communicate by sharing access to fields and the objects reference fields refer to.But this communication results to some errors like thread interference and memory consistency errors. The synchronization tool avoid this problem by allowing one thread to access the shared resources at a time to make the program thread safe.
4)Abstract Class-An Abstract class is similar to an interface in some aspects. It cannot be instantiated but it can be extended.it may or may not include abstract methods.Any class that extends the abstract class has to provide the implementation to the abstract methods. Hence these classes can be used as a skeleton to similar classes where some common functionality may be required. Such functionality can also be embedded into these classes.
5)Method Overriding-when a method in a subclass has the same name and type signature as a method in its superclass, then the method in the subclass is said to override the method in the superclass.This is said to be Method Overriding.
6)Throws keyword-When we know that a particular exception may be thrown or to pass a possible exception then we use throws keyword. Here the Java compiler knows about the exceptions thrown by some methods so it insists us to handle them. It takes the arguments as a list of the objects of type java.lang.Throwable class.When we use the throws keyword with a method it is known as ducking.
7)String Class- The String class represents character strings. All string literals in Java programs are implemented as instances of this class. The String class provides methods for examining individual characters of the sequence, comparing strings, searching strings, extracting substring, copy the string,changing the case of string like uppercase to lowercase and lowercase to uppercase,replacing the string,concatenating the string etc.Strings are constant and their values cannot be changed after they are created.
8)Static Members-The static members can be accessed before any objects of its class are created, and without reference to any object.A static variable is shared by all the instances of that class. A static method cannot access non-static/instance variables, because a static method is never associated with any instance.A static method can access all the static data.
9)Byte Code-Byte codes are the machine language of the Java virtual machine. When a JVM loads a class file, it gets one stream of byte codes for each method in the class. The byte codes streams are stored in the method area of the JVM. The byte codes for a method are executed when that method is invoked during the course of running the program. They can be executed by intepretation, just-in-time compiling, or any other technique that was chosen by the designer of a particular JVM.