Advanced Programming Java - Course Outline IT
Advanced Programming Java - Course Outline IT
Advanced Programming in Java (ITec3058); B.Sc. (IT), 3rd year, Semester II, 2014 E.C
Course Objectives Upon completion of this course, students should be able to:
✓ Create Java technology applications that leverage the object-
oriented features of the Java language, such as encapsulation,
inheritance, and polymorphism
✓ Execute and run a Java technology application
✓ Use Java technology data types and expressions
✓ Use Java technology flow control constructs
✓ Use arrays and other data collections
✓ Implement error-handling techniques using exception handling
✓ Create event-driven GUI using Java technology GUI components:
panels, buttons, labels, text fields, and text areas
✓ Create multithreaded programs
✓ Create JDBC applications
Course’s Content
Units Topics
Unit One: 1.1 Introduction
Introduction 1.2 Basic Concepts of Java
Unit Two: 2.1 Why Use Generics?
Generics and 2.1.1 Generic Classes
Collections 2.1.2 Generic Interfaces
2.1.3 Generic Methods
2.1.4 Generic Bounds
2.2 Collection API
2.2.1 Interfaces and Iterators
2.2.2 Abstract, Concrete Classes
2.2.3 Wildcard Parameters
2.3 Serialization with Generics
Unit Three: 3.1 Thread Components and Scheduling
Java Threads and 3.1.1 Mutually Exclusive Threads
Deadlock 3.1.2 Monitors and Locks
3.1.3 Synchronized Methods and Blocks
3.2 Deadlock Scenarios
3.2.1 Circular Deadlock
3.2.2 Callback Deadlock
3.2.3 Nested Monitor Deadlock
3.3 Designing with Threads
Unit Four: 4.1 Sockets
Network 4.1.1 Clients and Servers
Programming 4.1.2 MultiThreaded Servers
4.2 Remote Method Invocation
4.2.1 Remote
4.2.2 Callbacks
2