Presentation is loading. Please wait.

Presentation is loading. Please wait.

Object-Oriented Programming

Similar presentations


Presentation on theme: "Object-Oriented Programming"— Presentation transcript:

1 Object-Oriented Programming
ธนวัฒน์ แซ่เอียบ

2 Categories of languages that support OOP:
1. OOP support is added to an existing language - C++ - Ada 95 2. Support OOP, but have the same appearance and use the basic structure of earlier imperative languages - Java (based on C++) 3. Pure OOP languages - Smalltalk

3 Paradigm Evolution 1. Procedural s-1970s (procedural abstraction) - process abstract 2. Data-Oriented - early 1980s (data-oriented) - data abstract 3. OOP - late 1980s - Inheritance - Polymorphism - Abstraction - Encapsulation

4 OOP Definitions: - ADTs are called classes
- Class instances are called objects - A class that inherits is a derived class or a subclass - The class from which another class inherits is a parent class or superclass - Subprograms that define operations on objects are called methods - The entire collection of methods of an object is called its message protocol or message interface

5 OOP Definitions: - Messages have two parts--a method name and the destination object - In the simplest case, a class inherits all of the entities of its parent - Inheritance can be complicated by access controls to encapsulated entities - A class can hide entities from its subclasses - A class can hide entities from its clients

6 OOP Definitions: - Besides inheriting methods as is, a class can
modify an inherited method - The new one overrides the inherited one - The method in the parent is overriden - There are two kinds of variables in a class: 1. Class variables - one/class 2. Instance variables - one/object - There are two kinds of methods in a class: 1. Class methods - messages to the class 2. Instance methods - messages to objects

7 Inheritance

8 Inheritance in Java

9 A Base Class: Person

10 Inheritance, Java, and Constructors

11 Inheritance, Java, and Constructors

12 Overriding Method Denitions

13 Call to an Overridden Method

14 Polymorphism

15 Static Polymorphism

16 Method Signature

17 Example Overloading

18 Dynamic Polymorphism

19 Overriding

20

21 Abstraction

22 Abstract Classes

23 Encapsulation

24 Encapsulation

25 Access Methods

26 Example

27 Private Methods

28 The public Access Modier

29 The protected Access Modier

30 ที่มา hil Hutto : College of Computing, Georgia Tech
Concepts of programming languages : Sebesta, Robert W. Prof. Dr. Slim Abdennadher :


Download ppt "Object-Oriented Programming"

Similar presentations


Ads by Google