601112 - Java Programming
16-Week Course - Semester 2, 2025-2026
This course introduces fundamental programming concepts using the Java language. Based on "Introduction to Java Programming and Data Structures" by Y. Daniel Liang (12th Edition), students will master Java basics, object-oriented programming, arrays, inheritance, polymorphism, exception handling, and GUI programming.
Java fundamentals, OOP principles, arrays, sorting and searching, inheritance, polymorphism, abstract classes, interfaces, exception handling, file I/O, and GUI programming.
Console applications, object-oriented systems, data processing programs, and graphical user interfaces using Java.
Java SE, JDK 17+, IntelliJ IDEA / Eclipse, command-line compilation and execution.
"Introduction to Java Programming and Data Structures" by Y. Daniel Liang, 12th Edition (Comprehensive Version). Pearson.
Variables, data types, selections, loops, methods, and mathematical functions.
Array basics, processing arrays, copying, passing to methods, and two-dimensional arrays.
Selection sort, insertion sort, linear search, binary search, Arrays class, and arrays of objects.
Defining classes, creating objects, constructors, getters/setters, the this keyword, and encapsulation.
Object composition, aggregation, the String class, wrapper classes, and BigInteger/BigDecimal.
Comprehensive review of Weeks 1-5 with practice problems and exam preparation.
Superclasses, subclasses, method overriding, the Object class, polymorphism, dynamic binding, and casting.
Abstract classes, abstract methods, interfaces, Comparable, Cloneable, and design patterns.
String methods, StringBuilder, StringBuffer, regular expressions, and text file I/O.
Exception types, try-catch-finally, throwing exceptions, custom exceptions, and file reading/writing.
JavaFX basics, scenes, stages, panes, shapes, colors, and event handling.
Hands-on project development applying all course concepts.
Comprehensive review and final examination.
"Introduction to Java Programming and Data Structures"
Author: Y. Daniel Liang
Edition: 12th Edition (Comprehensive Version)
Publisher: Pearson
All definitions, examples, and exercises in this course follow this textbook closely. Chapter references are provided for each week.
| Component | Weight | Description |
|---|---|---|
| Assignments & Quizzes | 10% | Weekly exercises and in-class quizzes |
| Project | 20% | Java programming project |
| Midterm Exam | 30% | Covers Weeks 1-5 |
| Final Exam | 40% | Comprehensive final exam |
Every Day: 10:00 AM - 12:00 PM
University of Petra