Object-Oriented programming with Java Part I is an introductory course designed to teach the fundamental principles of object-oriented programming using the Java programming language. This course is ideal for individuals who are interested in learning how to create software applications using Java and want to gain a comprehensive understanding of the object-oriented programming paradigm. The course is divided into several sections, each of which covers a different aspect of object-oriented programming. The first section introduces students to the basic concepts of object-oriented programming, including classes, objects, and methods. Students will learn how to create classes and objects in Java and how to use them to perform various tasks. The second section of the course focuses on encapsulation and inheritance. Students will learn how to use encapsulation to protect their code from external interference and how to create subclasses that inherit properties and behaviors from their parent classes. The third section covers polymorphism, which allows objects to take on different forms depending on the context in which they are used. Throughout the course, students will gain hands-on experience using Java to create real-world applications. They will learn how to use Java's built-in libraries and tools to build graphical user interfaces, process user input, and perform other common programming tasks. In addition to learning the technical skills needed to create software applications with Java, students will also learn best practices for software development. They will learn how to write clean, modular code that is easy to read and maintain, and how to use comments and documentation to communicate their code to others. By the end of the course, students will have a solid foundation in object-oriented programming with Java and will be well-prepared to take on more advanced programming challenges. Whether you're interested in pursuing a career in software development or simply want to expand your programming skills, Object-Oriented programming with Java, Part I is an excellent place to start.