This note explains the following topics: Object oriented paradigm,
Methods, Classes, Polymorphism, Class Hierarchies, Method Binding, Abstraction,
Overriding, Exceptions, The Java Buzzwords, Interpreted and High Performance,
Arrays, Operators, Control Statement, Parameter Passing, Recursion, String
Handling, Inheritance, Forms of inheritance, Benefits Of Inheritance, Costs Of
Inheritance, Packages and Interface, Byte Stream Classes.
Author(s): Shri Vishnu Engineering College For
Women
Carl Erickson's
note on Object-Oriented Programming introduces the OOP paradigm in detail. It
first gives an explanation of Motivation for Object-Oriented Programming and The
Object-Oriented Paradigm, including insights as to why OOP is effective. The
note discusses essential concepts of OOP: Abstraction, Identity, Encapsulation,
and Modularity, object-oriented messaging, and object-oriented hierarchy. It
also discussed naming conventions, object-oriented typing, and concurrency and
persistence. Other heads-up are on practical aspects of OOP: the Object-Oriented
Development Process and ObjectOriented Analysis Techniques. It also provides
tools for effective design through the use of UML notation, CRC cards, and
object-oriented class relationships. In simple terms, this can be a useful
resource to understand the theoretical and practical aspects of OOP regarding
its pitfalls and best practices.
This is a
PDF tutorial that gives an overview of OOD but shifts the focus onto Java as the
main language used. The tutorial covers everything from very basic aspects in
Java to a more interesting, comprehensive case study on which the concepts of
OOD are really put into practical application. Aspects of the book include but
are not limited to: analysis, design, and programming of course, but also the
essential parts of testing and exception handling. Advanced aspects of OOD such
as polymorphism, design patterns, and inheritance are also covered. We will also
look into inner classes, one of the special features in Java. The resource is a
good guide for both novices and intermediate learners for the view of
object-oriented development principles and how to apply them in Java.