课外天地 李树青学习天地Java程序语言课件 → [推荐]Java授课视频第六课:面向对象——封装之二


  共有19585人关注过本帖平板打印复制链接

主题:[推荐]Java授课视频第六课:面向对象——封装之二

帅哥哟,离线,有人找我吗?
admin
  1楼 博客 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 管理员
等级:管理员 帖子:1939 积分:26594 威望:0 精华:34 注册:2003/12/30 16:34:32
带有增加秒数功能的时钟类  发帖心情 Post By:2011/3/27 14:31:33 [只看该作者]

class Clock {
        private int hour;
        private int minute;
        private int second;

        public Clock() {
        }

        public Clock(int h, int m, int s) {
                setTime(h, m, s);
        }

        public int getHour() {
                return hour;
        }

        public void setHour(int hour) {
                if (hour >= 0 && hour <= 23)
                        this.hour = hour;
                else if (hour > 0)
                        this.hour = hour % 24;
                else
                        this.hour = 0;
        }

        public int getMinute() {
                return minute;
        }

        public void setMinute(int minute) {
                if (minute >= 0 && minute <= 59)
                        this.minute = minute;
                else
                        this.minute = minute % 60;
        }

        public int getSecond() {
                return second;
        }

        public void setSecond(int second) {
                if (second >= 0 && second <= 59)
                        this.second = second;
                else
                        this.second = second % 60;
        }

        public void setTime(int h, int m, int s) {
                setHour(h);
                setMinute(m);
                setSecond(s);
        }

        public String toString() {
                java.text.DecimalFormat df = new java.text.DecimalFormat("00");
                return df.format(hour) + "小时" + df.format(minute) + "分钟"
                                + df.format(second) + "秒";
        }

        public void addSecond(int s) {
                second = second + s;
                if (second >= 60) {
                        minute = minute + second / 60;
                        second = second % 60;
                }
                if (minute >= 60) {
                        hour = hour + minute / 60;
                        minute = minute % 60;
                }
                if (hour >= 23) {
                        hour = hour % 24;
                }
        }
}

public class Exec {
        public static void main(String[] args) {
                Clock beijing = new Clock(12, 23, 45);
                beijing.addSecond(21);
                System.out.println(beijing);
        }
}


 回到顶部