Object Oriented Programming Concepts IIUnit ID :H7E0 04ContentHours1. Java Components 1.1. Blocks 1.1.1. static initialization block 1.1.2. instance initialization block1.2. Enums 1.2.1. Declaring enums and Use enums 1.2.2. Constructors, Methods, and Variables in an enum1.3. Advanced Overloading and Var –args 1.3.1 Overloading with Var-args 1.3.2. Overloading with Widening and Boxing 1.3.3. Widening Reference Variables12ContentHours2. Exception Handling 2.1. Introduction to exception handling 2.2. Catching an Exception 2.2.1. try ,catch and finally blocks 2.2.2. Behavior of Uncaught Exception2.3. Throwing exceptions and throws clause 2.4. Defining Exceptions 2.3.1. Exception Hierarchy 2.3.2. Handling hierarchical exceptions 2.5. Declares methods and overriding methods that throw Exceptions.2.6. Runtime exceptions, checked exceptions and errors.2.7. Common Exceptions and Errors2.8. Assertion Mechanism 2.7.1. Introduction to Assertions 2.7.2. Enabling Assertions 2.7.3. Appropriate use of assertions 13ContentHours3. Wrapper Classes and AutoBoxing 3.1. Introduction to Wrapper Classes3.2. Wrapper Objects 3.3. Wrapper Conversion Utilities 3.4. AutoBoxing 7ContentHours4. Threads 4.1. Defining, Instantiating, and Starting Threads 4.2. Thread States and Transitions 4.7.1. Thread States 4.7.2. Preventing Thread Execution 4.7.3. Sleeping 4.7.4. Synchronizing Code, 4.7.5. Thread Priorities and yield( ) 4.7.6. Synchronization and Locks 4.7.7. Thread Deadlock 4.3. Thread Interaction 4.7.1. Using notifyAll( ) , notify(), wait()19ContentHours5. Strings, I/O, Formatting, and Parsing 5.1. String, StringBuilder, and StringBuffer 5.7.1. String Class 5.1.1.1. Strings and Memory 5.1.1.2. Methods in the String Class 5.2. StringBuffer 5.2.1.1. Methods in the String Class 5.3. StringBuilder 5.3.1.1. Methods in the String Class5.4. File Navigation and I/O 5.7.1. The java.io.Console Class 5.4.1.1. Serialization 5.4.1.2. Dates, Numbers, and Currency 5.5. Parsing, Tokenizing, and Formatting 5.7.1. A Search Tutorial 5.7.2. Locating Data via Pattern Matching 5.7.3. Tokenizing 5.7.4. Formatting with printf() and format()25ContentHours6. Generics and Collections 6.1 Collections 6.1.1. Overriding hashCode() ,equals() 6.1.2. Collections 6.1.3. Introduction to Collections 6.1.4. Set Interface and using Sets 6.1.5. Map Interface and using Maps 6.1.6. List Interface and using Lists 6.1.7. Queue Interface 6.1.8. using PriorityQueue Class 6.1.9. AutoBoxing with Collections 6.1.10. Sorting Collections and Arrays 6.1.11. java.util. Arrays class 6.1.12. java.util. Collections class 6.1.13. Sorting Collections 6.1.14. The Comparable Interface 6.1.15. Sorting with Comparator 6.1.16. Sorting with the Arrays Class 6.1.17. Searching Arrays and Collections 6.1.18. Converting Arrays to Lists to Arrays6.2. Generics 6.2.1. How to use type parameters ( class/interface declarations, instance variables, method arguments, return types) 6.2.2. Write Generic Methods 6.2.3. Generic versions of the Collections API(Set , List Map interfaces and implementation classes ) 6.2.4. Limitations of the non-generic collections 6.3. Combining Generic and Non-Generic Collections25ContentHours7. Inner Classes 7.1. Regular Inner classes 7.2. Method-Local Inner Classes 7.3. Anonymous Inner Classes 7.4. Static Nested Classes ContentHours8. Development 8.1. javac and java Commands8.2. JAR Files 8.3. Static Imports 712