advertisement
javaboutique
Search Tips
Articles  |   Tutorials  |   Reviews  |   Tools  |   by Category  |   by Date  |   by Name  |   Submit  |   Source  |   Forums  |  
javaboutique
Browse DevX


Partners & Affiliates











advertisement


Reviews : Java Books :
Beginning Java Objects : Chapters 2 and 3

Title: Beginning Java Objects
ISBN: 1861004176
US Price: $ 39.99
Canadian Price:
C$ 59.95
UK Price: £ 28.99
Publication Date: November 2000
Pages: 800
© Wrox Press Limited, US and UK.

Beginning Java Objects: Chapter 3
Objects and Classes

Objects are the fundamental building blocks of an object-oriented (OO) system. Just as abstraction involves producing a model of the real world as we discussed in Chapter 2, objects are 'mini abstractions' of various real-world components.

In this chapter, you will learn:

  • What makes up a software object.
  • How we use classes to specify an object's data and behavior.
  • How we create objects based on a class definition.
  • How objects keep track of one another.

What Is an Object?

Before we talk about software objects, let's talk about real-world objects in general. According to Merriam-Webster's dictionary, an object is:
"(1) Something material that may be perceived by the senses; (2) something mental or physical toward which thought, feeling, or action is directed."
The first part of this definition refers to objects as we typically think of them: as physical 'things' that we can see and touch, and which occupy space. Because we intend to use the Student Registration System (SRS) case study as the basis for learning about objects throughout this book, let's think of some examples of physical objects that make sense in the general context of an academic setting, namely:
  • The students who attend classes
  • The professors who teach them
  • The classrooms in which class meetings take place
  • The furniture in these classrooms
  • The buildings in which the classrooms are located
  • The textbooks students use
and on and on. Of course, while all of these objects are commonly found on a typical college campus, not all of them are relevant to registering students for courses, nor are they all necessarily called out by the SRS case study; but, we won't worry about that for the time being. In Part 2 of this book, we'll learn a technique for using a requirements specification as the basis for identifying which objects are relevant to a particular abstraction.

Now, let's focus on the second half of the definition, particularly on the phrase 'something mental ... toward which thought, feeling, or action is directed'. There are a great many conceptual objects that play important roles in an academic setting; some of these are:

  • The courses that students attend
  • The departments that faculty works for
  • The degrees that students receive
and, of course, many others. Even though we can't see, hear, touch, taste, or smell them, conceptual objects are every bit as important as physical objects are in describing an abstraction. Let's now get a bit more formal, and define a software object:
"A (software) object is a software construct that bundles together data (state) and functions (behavior) which, taken together, represent an abstraction of a 'real-world' (physical or conceptual) object."
Let's explore the two sides of objects — their state and behavior — separately, in more depth.




How to Add Java Applets to Your Site

New on the Java Boutique:

New Review:

Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling API boasts simplicity, ease-of-integration, a well-rounded feature set, and it's free!

New Applet:

Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA sequences into three useful formats.

Elsewhere on internet.com:

WebDeveloper Java
Lots of Java information on webdeveloper.com

WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.

ScriptSearch Java
Hundreds of free Java code files to download.

jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.

 Avaya Developer Showcase
 MSDN Spotlight
 PHP for Windows Showcase
XML error: undefined entity at line 34
advertisement
Receive Articles via our XML/RSS feed
Receive Articles via our XML/RSS feed

JavaBytes
Internet Cyclone
This powerful, easy-to-use, internet optimizer is for Windows 95, 98, ME, NT, 2000 and XP. It's designed to automatically optimize your Windows settings, boosting your Internet connection up to 200%.

IBM Brings Developers Into the Cloud
Apache at 10: You Can't Buy Us
Microsoft's CodePlex Foundation Moving Forward
Apple Claims 100,000 Apps, Google Analyzes Them
Nokia Latest to Play Opera Mobile 10 Browser
PayPal Opens Up Payment Platform to Devs
Ubuntu Linux 9.10 'Karmic Koala' Starts Its Climb
IBM Links Rational Developer Tools, Tivoli Apps
Libraries Give Vista Apps a Windows 7 Look
Ubuntu: The 'Default Alternative' to Windows?

Delivering Web-based Embedded Fonts in CSS 3
Adobe Helps PHP Developers Create Rich Internet Applications
Java Developers Finding a Home at Adobe Flex
Virtualization Delivers a Dynamic Infrastructure
Consuming XML Web Services in iPhone Applications
Build a More Agile Business with IBM
POJO-Based Solutions for LDAP Access: One Good, One Better
IBM Offers Enhanced Measurement and Management for Energy Usage
IBM Helps Transformation to an Information-Based Enterprise
Top Five Touch UI-Related Design Guidelines

Advertising Info  |   Member Services  |   Contact Us  |   Help  |   Feedback  |   Site Map  |   Network Map  |   About

internet.commediabistro.comJusttechjobs.comGraphics.com

Search:

WebMediaBrands Corporate Info

Legal Notices, Licensing, Reprints, Permissions, Privacy Policy.
Advertise | Newsletters | Shopping | E-mail Offers | Freelance Jobs