rent-now

Rent More, Save More! Use code: ECRENTAL

5% off 1 book, 7% off 2 books, 10% off 3+ books

9780072253634

Oop Demystified

by ;
  • ISBN13:

    9780072253634

  • ISBN10:

    0072253630

  • Edition: 1st
  • Format: Paperback
  • Copyright: 2004-03-29
  • Publisher: McGraw Hill
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $25.00 Save up to $0.02
  • Buy New
    $24.98

    THIS IS A HARD-TO-FIND TITLE. WE ARE MAKING EVERY EFFORT TO OBTAIN THIS ITEM, BUT DO NOT GUARANTEE STOCK.

Summary

Learn object-oriented programming in no time with help from this easy-to-understand guide, ideal for novice and expert programmers alike. Discover why objects are so successful as the model for this type of programming and how objects are classified. Distinguish between how people see the world and how computers "see" it. Learn about attributes and methods, inheritance, polymorphism, real-world and case modeling, object-oriented programming languages, and much more. Each chapter ends with a quiz, culminating in a final exam at the end of the book so you can test your knowledge.

Author Biography

JIM KEOGH (Ridgefield Park, NJ) is a Columbia University Faculty member and teaches Object-oriented programming along with other computer science courses.

MARIO GIANNINI (New York, NY) is the chair of the programming track at Columbia University and has written several computer technology books for Prentice-Hall.

Table of Contents

Introduction xvii
CHAPTER 1 A Look at How We See the World 1(10)
The Stuff That Stuff Is Made Of
1(3)
Abstract Objects and Instances
2(2)
Why an Object?
4(1)
Inheritance
4(3)
Why Use Inheritance?
6(1)
Objects in the Business World
7(2)
Real-Life Objects and Object-Oriented Programming
9(1)
Quiz
10(1)
CHAPTER 2 What Is a Class? 11(16)
The Object of Objects
11(1)
A Class
12(7)
Defining a Class
13(1)
Attributes
14(2)
Methods
16(3)
Combining a Class with a Program
19(1)
Declaring an Instance of a Class
20(4)
Initializing an Instance Variable
21(1)
Accessing an Instance Variable
22(1)
Assigning a Value to an Instance Variable from Your Program
23(1)
Calling a Method
24(2)
Passing Parameters
25(1)
Using a Return Value
25(1)
Quiz
26(1)
CHAPTER 3 Encapsulation 27(18)
Parts of a Program Come Together
27(2)
What Is Encapsulation?
29(1)
Why Use Encapsulation?
30(1)
Protection Using Access Specifiers
30(4)
Public Access Specifier
31(1)
Private Access Specifier
32(1)
Protected Access Specifier
33(1)
Encapsulation in Action Using C++
34(7)
Inside the Write() Member Function
35(1)
Inside the Display() Member Function
36(1)
Inside the main() Function
36(2)
Protected Access Specifier in Action
38(3)
Encapsulation in Action Using Java
41(3)
Protected Access Specifier in Action
42(2)
Quiz
44(1)
CHAPTER 4 Methods and Polymorphism 45(16)
Methods
45(9)
Polymorphism
46(4)
Overloading Methods
50(1)
Polymorphism Using C++
51(3)
Interface
54(1)
Interface Design
54(1)
Binding
55(1)
Run-Time Polymorphism
55(4)
Run-Time Polymorphism in Action
56(3)
Quiz
59(2)
CHAPTER 5 Inheritance 61(26)
Inheritance: The Only Way to Program
61(2)
The Class Hierarchy
63(6)
Types of Inheritance
63(4)
Choosing the Right Type of Inheritance
67(2)
Simple Inheritance Using C++
69(5)
Simple Inheritance Using Java
74(2)
Level Inheritance Using C++
76(3)
Level Inheritance Using Java
79(3)
Multiple Inheritance Using C++
82(2)
Multiple Inheritance Using Java
84(1)
Quiz
85(2)
CHAPTER 6 Abstraction 87(12)
Abstraction: The Enforcer
87(4)
Function vs. Functionality
89(1)
The Power of Abstraction
90(1)
The Abstract Method
90(1)
Abstraction in Action
91(6)
Errors Galore
94(3)
Frameworks, Libraries, and Abstraction
97(1)
Quiz
98(1)
CHAPTER 7 Identifying and Describing Objects 99(16)
An Object
100(8)
Identifying Attributes
100(1)
Describing Attributes
101(1)
Decomposing Attributes to Data
102(1)
Identifying Behaviors
103(1)
Describing Behaviors
103(5)
Class Definition and Class Diagram
108(1)
Relationships Among Objects
108(5)
Entity Relationship Diagram
110(1)
Leveling Diagram
111(2)
Quiz
113(2)
CHAPTER 8 Real-World Modeling 115(18)
Theory vs. the Real World
116(7)
From Simple Beginnings
116(1)
Object-Oriented vs. Procedural Languages
116(1)
Behavior Problems
117(1)
Simulation May Not Be the Objective
117(1)
Internal Model and External Model
118(1)
Hierarchical Problems
119(1)
Task Oriented, Not Object Oriented
120(1)
Self-Contained Data vs. Wide Source of Data
121(1)
The World in Discrete Pieces
121(1)
Do We Think in Objects?
122(1)
OOP and Data
122(1)
Real-World Hierarchy
123(2)
The Morphing of a Hierarchy
123(1)
"Is a" Problems
124(1)
The Real-World Challenges of Object-Oriented Programming
125(3)
Data Storage
125(1)
Common Procedures
126(1)
Defining Objects
127(1)
Hierarchy
127(1)
The Computer World vs. the Real World
128(3)
Quiz
131(2)
CHAPTER 9 Collaboration 133(16)
What Is Collaboration?
133(2)
Inside a Process
134(1)
OOP Collaboration
135(13)
UML Sequence Diagrams
141(1)
Is main() a Class?
142(1)
Student Registration
142(1)
UML Collaboration Diagrams
143(2)
Collaboration and Inheritance
145(1)
Association
146(1)
Self-Collaboration
146(1)
Class Responsibility Collaborator
147(1)
Quiz
148(1)
CHAPTER 10 Case Modeling 149(20)
About Case Modeling
149(1)
Oh No, Not End Users
150(1)
Gathering Requirements
151(1)
The Interview
152(1)
Essential Use Case
152(2)
System Use Case
154(1)
Business Rules
155(2)
User Interface Diagramming
157(3)
User Interface Flow Diagramming
157(1)
User Interface Prototyping
158(2)
Defining Classes from Our Designs
160(1)
Identifying Technical Requirements
161(1)
Change Cases
162(1)
Project Management
162(5)
Clients
163(1)
Projects
163(1)
Work Requests
164(1)
Tasks
165(1)
Estimation
166(1)
Quiz
167(2)
CHAPTER 11 Interfaces 169(20)
Inside Interfaces
169(2)
Interfaces Are Not Classes
170(1)
Interface Diagrams
171(1)
Show Me the HTML
172(1)
A Quick Introduction to HTML
172(1)
The HTMLSource Interface
173(1)
The Classes, Before an Interface Is Implemented
174(4)
Implementing Interfaces in Java and C#
178(1)
Bringing It All Together
179(1)
What About C++?
180(1)
Components
181(2)
Standard Interfaces
183(2)
Standard Java Interfaces
183(1)
Standard C# Interfaces
184(1)
Ultimate Base Classes
185(2)
Quiz
187(2)
CHAPTER 12 Object-Oriented Programming Languages 189(22)
A History of Computers and Programming
190(2)
The Three Dominant Modern OOPLs
192(17)
C++
192(7)
Java
199(5)
C#
204(5)
Quiz
209(2)
Final Exam 211(4)
Answers to Quizzes and Final Exam 215(18)
Chapter 1
215(2)
Chapter 2
217(1)
Chapter 3
218(1)
Chapter 4
219(1)
Chapter 5
219(1)
Chapter 6
220(1)
Chapter 7
221(1)
Chapter 8
222(1)
Chapter 9
222(1)
Chapter 10
223(1)
Chapter 11
224(1)
Chapter 12
224(1)
Answers to Final Exam
225(8)
Classes in Java 233(8)
Interfaces
238(1)
Packages
238(3)
Classes in C++ 241(6)
Constructor and Destructor
242(1)
Member Functions
242(1)
Inline Functions
243(1)
Unions, Structs, and Classes
243(1)
Objects and Functions, Copy Constructors
243(1)
Enums Inside Classes
244(1)
Static Members
245(2)
Class Definitions in C# 247(4)
Destructors and Garbage Collection
249(1)
Assemblies
250(1)
Index 251

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program