1001: 类的设计(1)
Time Limit: 1 Sec Memory Limit: 65535 MB 64bit IO Format: %lldSubmitted: 9 Accepted: 7
[Submit][Status][Web Board]
Description
设计clock类,成员数据包含时(hour)分(minute)秒(second),都是int类型,根据给定的main函数设计必要的成员函数。
main函数已给定,提交时只需要提交main函数外的代码部分。
int main()
{
Clock c1,c2(12,25,38);
c1.Show();
c2.Show();
c1.Set(23,59,59);
c1.Show();
return 0;
}
Sample Output
8:16:24
12:25:38
23:59:59
感受:了解了构造函数和重载的概念。
构造函数是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,
特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们 即构造函数的重载。
重载:就是函数或者方法有同样的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者方法。
C++:
#include <cstdio>
#include <iostream>
#include <cstdlib>
#include <algorithm>
#include <ctime>
#include <cmath> #include <string> #include <cstring> #include <stack> #include <queue> #include <list> #include <vector> #include <map> #include <set> using namespace std; const int INF=0x3f3f3f3f; const double eps=1e-10; const double PI=acos(-1.0); #define maxn 500 class Clock { public: Clock(int h = 8, int m = 16, int s = 24) { hour = h; minute = m; second = s; }; void Show() { cout<<hour<<":"<<minute<<":"<<second<<endl; } void Set(int h, int m, int s) { hour = h; minute = m; second = s; } private: int hour; int minute; int second; }; int main() { Clock c1, c2(12, 25, 38); c1.Show(); c2.Show(); c1.Set(23,59,59); c1.Show(); return 0; }
JAVA:
public class Clockhelp {
private int hour, minute,second; public Clockhelp() { hour =13; minute = 45; second =65; } public Clockhelp(int h, int m, int s ){ hour = h; minute = m; second = s; } public void Show() { System.out.println(hour+":"+minute+":"+second); } public void Set(int h, int m, int s) { hour = h; minute = m; second = s; } }
public class Clock {
public static void main(String[] args) { // TODO Auto-generated method stub Clockhelp c1 = new Clockhelp(); Clockhelp c2 = new Clockhelp(12, 25, 38); c1.Show(); c2.Show(); c1.Set(23,59,59); c1.Show(); } }