JAVA复习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 编写一个完整的Java 程序,包括Complex和TestComplex两个类。
使用复数类Complex验证两个复数 1+2i 和3+4i 相加产生一个新的复数4+6i 。
(1)复数类Complex必须满足如下要求:
①复数类Complex 的变量有:
realPart : 私有,int型,代表复数的实数部分
imaginPart : 私有,int型,代表复数的虚数部分
②复数类Complex 的方法有:
Complex( ) : 构造函数,将复数的实部和虚部都置0
Complex( int r , int i ) : 构造函数,用参数r设置实部的初值,用参数i设置虚部的初值。
void setRealPart(int r):设置实数部分
void setImaginPart(int i):设置虚数部分
int getRealPart ( ):返回实数部分
int getImaginPart ( ) :返回虚数部分
Complex complexAdd(Complex a) : 将当前复数对象与参数中的复数对象a相加,所得的结果仍是一个复数值,返回给此方法的调用者。
public String toString( ) : 把当前复数对象的实部、虚部组合成 a+bi 的字符串形式输出,其中a 和 b分别为实部和虚部的数据。
(2)TestComplex类
在TestComplex的main函数中,完成如下工作。
1)创建两个复数对象,分别表示1+2i和3+4i
2)得到一个新的复数对象,为上面两个复数对象的和。调用toString函数并打印加法表达式,例如 (1+2i)+(3+4i)=(4+6i)。
3)将第一个复数对象的实部和虚部分别改为2和3,将第二个复数对象的实部和虚部分别设为原来的2倍。得到一个新的复数对象,为上面两个复数对象的和,调用toString函数打印加法表达式。
程序:
import java.io.*;
class Complex{
private int realPart;
private int imaginPart;
Complex(){
this.realPart = 0;
this.imaginPart = 0;
}
Complex(int r, int i){
this.realPart = r;
this.imaginPart = i;
}
public void setRealPart(int r){
this.realPart = r;
}
public void setImaginPart(int i){
this.imaginPart = i;
}
public int getRealPart(){
return this.realPart;
}
public int getImaginPart(){
return this.imaginPart;
}
Complex complexAdd(Complex a){
int realPart = this.realPart + a.getRealPart();
int imaginPart = this.imaginPart + a.getImaginPart();
return new Complex(realPart, imaginPart);
}
public String toString(){
if(this.imaginPart == 0) return "" + this.realPart;
else if(this.imaginPart > 0) return "" + this.realPart + "+" + this.imaginPart + "i";
else return "" + this.realPart + this.imaginPart + "i";
}
}
class TestComplex{
public static void main(String[] args){
Complex a = new Complex(1,2);
Complex b = new Complex(3,4);
Complex sum = plexAdd(b);
System.out.println("(" + a + ")" + "+" + "(" + b + ")" + "=" + "(" + sum + ")");
a.setRealPart(2);
a.setImaginPart(3);
b.setRealPart(b.getRealPart() * 2);
b.setImaginPart(b.getImaginPart() *2);
sum = plexAdd(b);
System.out.println("(" + a + ")" + "+" + "(" + b + ")" + "=" + "(" + sum + ")");
}
}
4 编写一个完整的Java 程序,包括User和TestUser两个类。
(1)User类必须满足如下要求:
①User类的变量有:
userName : String型
password : 私有,String型
userNumber: 静态,int型,表示用户数量,初始化为0
②User类的方法有:
User( ) : 构造方法,userNumber加1,用户名初始化为“unknown*”(*表示userNumber),密码初始化为“123456”
User(String userName) : 构造方法,userNumber加1,用参数初始化用户名,密码初始化为“123456”
User(String userName,String password) : 构造方法,userNumber加1,分别用参数初始化用户名和密码
void setPassword(String oldPassword,String newPassword):设置密码,当oldPassword和密码相同时,把密码修改为newPassword,并显示"Password set success",否则显示"Password set not success"
public String toString( ) : 返回一个字符串,型为
“UserName:***,Password###”
(2)TestUser类
在TestUser类的main函数中,完成如下工作。
1)创建一个User类
2)将用户信息打印出来(调用toString方法)
3)从键盘得到两个字符串,新密码和旧密码,用来修改密码
4)将修改后的用户信息打印出来(调用toString方法)
程序:
import java.io.*;
class User{
String userName ;
private String password ;
static int userNumber=0;
User(){
userNumber++;
userName="unknown*";
password="123456";
}
User(String userName){
userNumber++;
erName=userName;
password="123456";
}