9.
设计两个类:Point 描述一个点; Distance 描述两点之间的距离(这是一个典型的类组合) class Point{ private int x,y; public Point(){} Point Point(Point p) //用拷贝而不是引用 }
Int getX(){} Int getY(){}
class Distance{ private Point p1,p2; double dist;
public Distance(Point p1,Point p2){} public getDistance){}
public static getDistance(Point p1,Point p2) //方法重载
}
9. 设计一个类,包含静态数据成员,静态方法,常量。同时用一个方法对该类的各个成
员进行测试。
10.设计一个类,其中包含两个求最大值的重载方法:
int max(int x,int y)
double(double a,double b)
11. 设计一个类Triangle ,用于描述一个三角形,其数据成员有a,b,c分别表示她的三条边, 添加一个构造函数带三个参数构造函数。同时添加两个同名方法
void modify(int total),将参数total 分为三部分,使其恰好组成一个三角形,
boolean modify(int a,int b, int c) ,如果给出的三个参数不能组成三角形,则返回false, 和方法double getArea() 返回三角形面积 12. 阅读下列程序,并写出结果:
public class MyDate{ public int year,month,day; public MyDate(int year,int month,int day;){ }
}
this.year=year; this.month=month; this.day=day;
public void setYear(int y){ yaer=y; }
public void setMonth(int m){ month=n; }
public void setDay(int d){ }
day=d;
public class ChangeDate{
public static void changeDate_1(MyDate myDate){ myDate=new MyDate(1979,5,1); }
public static void changeDate_2(MyDate myDate){ }
public static void main(String[] args){ MyDate date=new MyDate(2001,9,11);
changeDate_1(date);
changeDate_2(date);
System.out.println(date.year+”-“+date.month+”-“+date.day); myDate.setMonth(10);
} }
11.常用的伪随机数算法如下:
Y0=1
Yk+1=(a*Yk+c) mod m Xk=Yk mod n
其中,a叫做乘数, c 叫做增数,m 叫做模数,mod 表示取模运算,所得到的序列Xk就叫做伪随机数序列。可以取 a=16807(即 7^5),m=2147483647(2^31-1), c=0.
使用该算法封装一个类,并提供两个重载的方法
next(int upper)产生一个[0--- upper]范围的随机数。
next(int int low,int upper)产生一个[low--- upper]范围的随机数。
4. 编写BankAccount类,要求如下:
4.1. 该类由此款人姓名(name :String ),存款余额(balance: double),存期(year:int)及年利
率(rate: double)四个数据成员,其中年利率的默认值为0.01.
4.2. 该类有两个重载的构造方法.其中一个构造方法不含参数,设置默认的存款为10元,存期一年;另一个沟造函数包含二个用于创建对象时设置存款额与存期的参数。 4.3. 该类有三个方法:存款(save),取款(fetch)及计算存期满后的总金额(calcTotal). 4.4. 创建一个账号fans,创建时即(利用构造函数)存入1000元,存期3年,后又存入2000元(利用save方法),计算存期满后的总金额(利用calcTotal方法)
5. 编写一个加密类,在其中实现对字符数组的加密和解密方法。加密原理是:
加密后的字符数组的第一个字符是原字符数组的最后一个自负,其余的每个字符是对应的原字符数组中的前一个字符的值加上3。比如:{?w?,?e?,?i?,?c?,?o?,?m?,?e?},末尾的字符为?e?, {?w?,?e?,?i?,?c?,?o?,?m?}依次加上3后成为{?z?,?h?,?o?,?f?,?r?,?p?},故加密后的结果为 {?e?,?z?,?h?,?o?,?f?,?r?,?p?}