1.Experimental purpose
To describe objects and classes, and to use classes to model objects .
To use UML graphical notations to describe classes and objects .
To demonstrate defining classes and creating objects .
To create objects using constructors.
To access data fields and invoke functions using the object member access operator (.) .
To separate a class definition from a class implementation.
To prevent multiple inclusions of header files using the #ifndef inclusion guard directive .
To declare private data fields with appropriate get and set functions for data field encapsulation and make classes easy to maintain .
2.Experimental Task
Design a class named Time. The class contains:
- Data fields hour, minute, and second that represent a time.
- A no-arg constructor that creates a Time object for the current time.
- A constructor that constructs a Time object with a specified elapse time since the middle of night, Jan 1, 1970, in seconds.
- A constructor that constructs a Time object with the specified hour, minute, and second.
- Three get functions for the data fields hour, minute, and second.
- A function named setTime(int elapseTime) that sets a new time for the object using the elapsed time.
Draw the UML diagram for the class. Implement the class. Write a test program that creates two Time objects, one using a no-arg constructor and the other using Time(555550), and display their hour, minute, and second.
(Hint: The first two constructors will extract hour, minute, and second from the elapse time. For example, if the elapse time is 555550 seconds, the hour is 10, the minute is 19, and the second is 10. For the no-arg constructor, the current time can be obtained using time(0), as shown in Listing 2.8, ShowCurrentTime.cpp.)
3. Experimental procedure
(1) Design: (UML diagram for the class.)
(2) Implementation: (Write Source Code here. Attention to the writing standardization of
program )
4.Experimental summary
Describe the main knowledge points.