Beginning Java Objects: Chapter 3 Objects and Classes
Data/State/Attributes
If we wish to record information about a student, what data might we require? Some examples might be:
- The student's name
- His or her student ID and/or social security number
- The student's birthdate
- His or her address
- The student's designated major field of study, if the student has declared one yet
- His or her cumulative grade point average (GPA)
- Who the student's faculty advisor is
- A list of the courses that the student is currently enrolled in this semester (a.k.a. the student's
current course load)
- A history of all of the courses that the student has taken to date, the semester/year in which each
was taken, and the grade that was earned for each: in other words, the student's transcript
and so on. Now, how about for a course? Perhaps we'd wish to record:
- The course number (for example, 'ART 101')
- The course name (for example, 'Introductory Basketweaving')
- A list of all of the courses which must have been successfully completed by a student prior to
allowing that student to register for this course (i.e. the course's prerequisites)
- The number of credit hours that the course is worth
- A list of the professors who have been approved to teach this course
In object nomenclature, the data elements used to describe an
object are referred to as the object's attributes.
An object's attribute values, when taken collectively, are said
to define the state, or condition, of the
object. For example, if we wanted to determine whether or not a
student is 'eligible to graduate' (a state), we might look at a
combination of:
- The student's transcript (an attribute), and
- The list of courses they are currently enrolled in (a second attribute)
to see if the student indeed is expected to have satisfied the course requirements for their chosen major
field of study (a third attribute) by the end of the current academic year.
A given attribute may be simple — for example, 'GPA', which can be represented as a simple floating
point number, — or complex — for example, 'transcript', which represents a rather extensive collection of
information with no simple representation.
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.
|