基礎面對象
##練習題時鐘#
package com.lovoinfo;
import java.util.Calendar;
/**
* 時鐘
* @author zenghao
*
*/
public class Clock {
private int hour;
private int minute;
private int second;
/**
* 構造器
*/
public Clock() {
Calendar cal = Calendar.getInstance();
hour = cal.get(Calendar.HOUR_OF_DAY);
minute = cal.get(Calendar.MINUTE);
second = cal.get(Calendar.SECOND);
}
/**
* 構造器
* @param hour 時
* @param minute 分
* @param second 秒
*/
public Clock(int hour, int minute, int second) {
this.hour = hour;
this.minute = minute;
this.second = second;
}
/**
* 走字
*/
public void go() {
second += 1;
if(second == 60) {
second = 0;
minute += 1;
if(minute == 60) {
minute = 0;
hour += 1;
if(hour == 24) {
hour = 0;
}
}
}
}
/**
* 顯示時間
* @return 返回當前時間
*/
public String display() {
String str = "";
if(hour < 10) {
str += "0";
}
str += hour + ":";
if(minute < 10) {
str += "0";
}
str += minute + ":";
if(second < 10) {
str += "0";
}
str += second;
return str;
}
/**
* 調整小時
* @param up true表示上調, false表示下調
*/
public void setHour(boolean up) {
if(up) {
hour = (hour + 1) % 24;
}
else {
hour -= 1;
if(hour == -1) {
hour = 23;
}
}
}
/**
* 調整分鐘
* @param up true表示上調, false表示下調
*/
public void setMinute(boolean up) {
if(up) {
minute = (minute + 1) % 60;
}
else {
minute -= 1;
if(minute == -1) {
minute = 59;
}
}
}
/**
* 調整秒
* @param up true表示上調, false表示下調
*/
public void setSecond(boolean up) {
if(up) {
second = (second + 1) % 60;
}
else {
second -= 1;
if(second == -1) {
second = 59;
}
}
}
}
package com.lovoinfo;
import javax.swing.JOptionPane;
public class Test03 {
public static void main(String[] args) throws InterruptedException {
Clock c = new Clock();
JOptionPane.showMessageDialog(null, c.display());
System.exit(0);
}
}
手機
package com.lovoinfo;
/**
* 手機
* @author zenghao
*
*/
public class MobilePhone {
String brand;
double screenSize;
boolean smart;
/**
* 打電話
* @param telNumber 呼叫的號碼
*/
public void call(String telNumber) {
System.out.println("正在呼叫" + telNumber);
}
/**
* 發短信
* @param telNumber 收信人
* @param message 消息的內容
*/
public void sendMsg(String telNumber, String message) {
System.out.println("向" + telNumber + "發送...");
System.out.println(message);
}
}
package com.lovoinfo;
public class Test01 {
public static void main(String[] args) {
MobilePhone phone = new MobilePhone();
phone.call("13812345678");
phone.sendMsg("13900998877", "晚上一起吃飯吧?");
}
}
學生
package com.lovoinfo;
/**
* 學生
* @author zenghao
*
*/
public class Student {
private String name;
private int age;
/**
* 構造器
* @param name 姓名
* @param age 年齡
*/
public Student(String name, int age) {
this.name = name;
this.age = age;
}
/**
* 吃飯
* @param food 吃的東西
*/
public void eat(String food) {
System.out.println(name + "正在吃" + food);
}
/**
* 睡覺
*/
public void sleep() {
System.out.println(name + "正在睡覺.");
}
/**
* 學習
* @param courseName 課程的名稱
*/
public void study(String courseName) {
System.out.println(name + "正在學習" + courseName);
}
@Override
public String toString() {
return name + " - " + age;
}
}
package com.lovoinfo;
public class Test02 {
public static void main(String[] args) {
Student stu = new Student("王大錘", 20);
stu.eat("牛肉麪");
stu.sleep();
stu.study("Java程序設計");
System.out.println(stu);
}
}
5.1作業:有一個游泳池我不知道它半徑,我要修一個3M寬的人行道,和圍牆。人行道修1平方要8元。圍牆1米5元。總共要多少資費。
package com.lovoinfo;
public class Swim {
double radii;
public double Swin(double tariff) {
double R = radii + 3;
double money1 = ((R * R - radii * radii) * 3.14) * 8 + R * 3.14 * 5;
return money1;
}
}
package com.lovoinfo;
import java.util.Scanner;
public class Test001 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Swim circle = new Swim();
System.out.println("半徑爲:");
double Tariff = sc.nextDouble();
System.out.println("總共需要花費:" + circle.Swin(Tariff)+"元");
sc.close();
}
}