The main focus of this course is to introduce the concept of Object Oriented Programming, OOP, through deep learning and practicing of the JAVA Language. Many examples are provided to emphasize the advantages of using the OOP paradigm in designing and implementing course assignments and projects. The course deals with different aspects of OOP like: classes and objects, polymorphism, encapsulation, abstract classes, interfaces, inheritance, exception handling, files, garbage collection and much more. Some Software Engineering concepts and techniques will be essential in order to support the students’ educational experience during the course.
Lectures notes, Discussion sessions, Quizzes, Assignments, Programming Assignments and Projects, and Examinations.
Topics to be covered:
Introduction to java, Primitive Data Types and Operations, Two Control Structure 1 and 2, Methods, Arrays, Object-Oriented Programming, Strings and its Operations, Inheritance and Polymorphism, Abstract classes and Interfaces, Exception Handling, Files.
1. Introduction to Java Programming, by Y.D. Liang.
2. Deitel – Java – How to Program
3. Head First Java, 2th edition 2005, by Kathy Sierra and Bert Bates. – Any java programming book or website can be used.
Web sites and Internet