顺便贴一下无聊的Java作业20151027
来源:互联网 发布:网络竞价排名 编辑:程序博客网 时间:2024/05/16 04:45
实验
1、将对象作为参数传递给方法。
题目要求:
(1)定义一个Circle类,包含一个double型的radius属性代表圆的半径,一个findArea()方法返回圆的面积。
(2)定义一个类PassObject,在类中定义一个方法printAreas(),该方法的定义如下:
public void printAreas(Cirlce c, int time)
在printAreas方法中打印输出1到time之间的每个整数半径值,以及对应的面积。例如,times为5,则输出半径1,2,3,4,5,以及对应的圆面积。
在main方法中调用printAreas()方法,调用完毕后输出当前半径值。
publicclassMain{
publicstaticvoid main(String[] args){
// TODO Auto-generated method stub
newPassObject().printAreas(newCircle(),5);
}
}
classCircle{
double radius;
double area;
publicdouble findArea(double radius){
this.radius = radius;
area =Math.PI * radius * radius;
return area;
}
}
classPassObject{
publicvoid printAreas(Circle c,int time){
System.out.println("Radius\tArea");
while(time >0)
System.out.println(time +"\t"+ c.findArea(time--));
}
}
实验
1、实现单链表的各项功能。
题目要求:
(1) 定义一个Node类,包含一个整型的data,还包含一个Node类型的引用。如:
class Node{
int data;
Node next;
}
(2) 定义一个LinkedList类,其中有几个方法,
public Node creatLinkedList() ///创建带头结点的单链表[单链表中的数据通过键盘输入的方式获得,请输入一组整数,以-1结束]
public void printList(Node h) //遍历单链表
(3)并创建相关对象进行测试各个功能
publicclassMain{
publicstaticvoid main(String[] args){
// TODO Auto-generated method stub
LinkedList l=newLinkedList();
Node n=l.creatLinkedList();
l.printList(n);
}
}
classLinkedList{
publicNode creatLinkedList(){
Node head =newNode(0);
Node t =null;
t = head;
System.out.println("输入:");
Scanner sc =newScanner(System.in);
int a = sc.nextInt();
do{
Node tail =newNode();
tail.data = a;
tail.next =null;
head.next = tail;
head = tail;
}while(sc.hasNext()&&(a = sc.nextInt())!=-1);
sc.close();
return t;
}
publicvoid printList(Node h){
h = h.next;
while(h !=null){
System.out.print(h.data +" ");
h = h.next;
}
System.out.println();
}
}
classNode{
int data;
Node next;
publicNode(int data){
this.data = data;
next =null;
}
publicNode(){
}
}
实验3 【以下红色字体的内容不用实现它,也不用管它,等下次课讲完以后,你们再在这个程序上改】
1、写一个名为Account的类模拟账户。该类的属性和方法如下图所示。该类包括的属性:账号id,余额balance,年利率annualInterestRate;包含的方法:访问器方法(getter和setter方法),取款方法withdraw(),存款方法deposit()。
Account
private int id //银行帐号
private double balance //帐号余额
private double annualInterestRate //年利率
public Account (int id, double balance, double annualInterestRate )
public int getId() //获得用户帐号
public double getBalance() //获得用户帐号余额
public double getAnnualInterestRate() //获得年利率
public void setId( int id) //设置用户帐号
public void setBalance(double balance) //设置用户帐号余额
public void setAnnualInterestRate(double annualInterestRate) //设置年利率
public void withdraw (double amount) //取钱
public void deposit (double amount) //存钱
提示:在提款方法withdraw中,需要判断用户余额是否能够满足提款数额的要求,如果不能,应给出提示。
2. 创建Customer类。
Customer
private String firstName //用户的名
private String lastName //用户的姓
private Account account //用户的银行帐户
public Customer(String f,String l)
public String getFirstName() //获得用户的名
public String getLastName() //获得用户的姓
public Account getAccount() //获得用户的帐户
public void setAccount(Account account) //设置用户的帐户
a. 声明三个私有对象属性:firstName、lastName和account。
b. 声明一个公有构造器,这个构造器带有两个代表对象属性的参数(f和l)
c. 声明两个公有存取器来访问该对象属性,方法getFirstName和getLastName返回相应的属性。
d. 声明setAccount 方法来对account属性赋值。
e. 声明getAccount 方法以获取account属性。
3.写一个测试程序。
(1) 创建一个Customer ,名字叫 Jane Smith, 他有一个账号为1000,余额为2000元,年利率为 1.23% 的账户。
(2) 对Jane Smith操作。
存入 100 元,再取出960元。再取出2000元。
打印出Jane Smith 的基本信息
结果如下:
成功存入 :100.0
成功取出:960.0
余额不足,取款失败
Customer [Smith, Jane] has a account: id is 1000, annualInterestRate is 1.23%, balance is 1140.0
publicclassMain{
publicstaticvoid main(String[] args){
// TODO Auto-generated method stub
Customer c =newCustomer("Jane","Smith");
Account ac =newAccount(1000,2000,1.23);
c.setAccount(ac);
ac.deposit(100);// 存入100
ac.withdraw(960);// 取出960
ac.withdraw(2000);// 取出2000
System.out.println("Customer ["+ c.getFirstName()+","
+ c.getLastName()+"] has a account: id is "+ ac.getId()
+", annualInterestRate is "+ ac.getAnnualInterestRate()
+"%, balance is "+ ac.getBalance());
}
}
classAccount{
privateint id;// 银行帐号
privatedouble balance;// 帐号余额
privatedouble annualInterestRate;// 年利率
publicAccount(int id,double balance,double annualInterestRate){
this.id = id;
this.balance = balance;
this.annualInterestRate = annualInterestRate;
}
publicint getId(){
return id;
}
publicvoid setId(int id){
this.id = id;
}
publicdouble getBalance(){
return balance;
}
publicvoid setBalance(double balance){
this.balance = balance;
}
publicdouble getAnnualInterestRate(){
return annualInterestRate;
}
publicvoid setAnnualInterestRate(double annualInterestRate){
this.annualInterestRate = annualInterestRate;
}
// 取钱
publicvoid withdraw(double amount){
if(amount >0){
if(amount <= balance){
balance -= amount;
System.out.println("成功取出:"+ amount);
}else
System.out.println("余额不足,取款失败");
}else
System.out.println("非法操作");
}
// 存钱
publicvoid deposit(double amount){
if(amount >0){
balance += amount;
System.out.println("成功存入:"+ amount);
}else
System.out.println("非法操作");
}
}
classCustomer{
privateString firstName;// 用户的名
privateString lastName;// 用户的姓
privateAccount account;// 用户的银行帐户
publicCustomer(String f,String l){
firstName = f;
lastName = l;
}
publicAccount getAccount(){
return account;
}
publicvoid setAccount(Account account){
this.account = account;
}
publicString getFirstName(){
return firstName;
}
publicString getLastName(){
return lastName;
}
}
publicclassTestPerson{
publicstaticvoid main(String[] args){
// TODO Auto-generated method stub
Person p =newPerson(18,"Kevin");
p.setAge(13);
System.out.println(p.getAge());
}
}
classPerson{
int age;
String name;
publicPerson(int age,String name){
this.age = age;
this.name = name;
}
publicint getAge(){
return age;
}
publicString getName(){
return name;
}
publicvoid setName(String name){
this.name = name;
}
publicvoid setAge(int age){
this.age = age;
}
}
publicclassMain{
publicstaticvoid main(String[] args){
// TODO Auto-generated method stub
Person p =newPerson("A",18);
System.out.println(p.name + p.age);
}
}
classPerson{
String name;
int age;
String school;
String major;
publicPerson(String n,int a){
name = n;
age = a;
}
publicPerson(String n,int a,String s){
name = n;
age = a;
school = s;
}
publicPerson(String n,int a,String s,String m){
name = n;
age = a;
school = s;
major = m;
}
}
publicclassMain{
publicstaticvoid main(String[] args){
// TODO Auto-generated method stub
Person p =newPerson("A",18);
System.out.println(p.name + p.age);
}
}
classPerson{
String name;
int age;
String school;
String major;
publicPerson(String n,int a){
name = n;
age = a;
}
publicPerson(String n,int a,String s){
name = n;
age = a;
school = s;
}
publicPerson(String n,int a,String s,String m){
name = n;
age = a;
school = s;
major = m;
}
}
Girl
-name:String
+setName(i: String)
+getName(): String
+marry(boy:Boy)
Boy
-name:String
-age:int
+setName(i: String)
+getName(): String
+setAge(i: int)
+getAge(): int
+marry(girl:Girl)
+shout():void
publicclassMain{
publicstaticvoid main(String[] args){
// TODO Auto-generated method stub
}
}
classBoy{
String name;
int age;
publicBoy(String name,int age){
this.name = name;
this.age = age;
}
publicString getName(){
return name;
}
publicvoid setName(String name){
this.name = name;
}
publicint getAge(){
return age;
}
publicvoid setAge(int age){
this.age = age;
}
publicvoid marry(Girl girl){
}
}
classGirl{
String name;
publicGirl(String name){
this.name = name;
}
publicString getName(){
return name;
}
publicvoid setName(String name){
this.name = name;
}
publicvoid marry(Boy boy){
}
publicvoid shout(){
}
}
- 顺便贴一下无聊的Java作业20151027
- 看了一个老师布置的C++作业,也顺便练习一下,提高一下自己
- 顺便测试了一下google的tcmalloc.
- 最近在找Java实习,顺便整理一下各大企业的招聘需求~
- 无聊一下.
- 无聊一下
- 顺便说一下
- 辞职了,顺便写一下自己的跳槽经验
- [转]辞职了,顺便写一下自己的跳槽经验
- 顺便说一下realplayer.bin的文件安装
- dfs(顺便求一下每个节点的儿子节点喽)
- 无聊。。。验证一下这段话
- 无聊,测试一下啦
- 无聊来测试一下
- 无聊总结一下
- 无聊的很,来翻译一下CSDN上的定时器
- [作业]英语作业,无聊记事
- 通过CGLIB实现AOP的浅析(顺便简单对比了一下JDK的动态代理)
- 如何利用s3c2440的gpio实现数据输入和输出
- Eclipse代码托管到GitHub
- fs4412开发板学习笔记(七)
- android自定义view实现字体变色
- 143 Reorder List [Leetcode]
- 顺便贴一下无聊的Java作业20151027
- Wildcard Matching
- 进制转换
- Codeforces Round #327 (Div. 1) E. Birthday【AC自动机+网络流】
- codeforces#292B_Drazil and His Happy Friends-暴力水题
- Codeforces 590B Chip 'n Dale Rescue Rangers
- Cookie深度解析
- fs4412开发板学习笔记(八)
- NSOperation的介绍