第二本书第一章习题

1.简述什么是类和对象,以及二者之间的关系。

   1.类和对象是抽象与具体的关系

   2.类是对象的类型,对象是类的实例 

   3.类定义的对象将会有属性和方法

   4.对象的属性和方法被封装在类中,相辅相成,不可分割.



2 教员要求张浩使用面向对象的思想编写一个计算器类(Calculator),可以实现2个整数的加,减,乘,除运算.如果你是张浩,准备如何实现?

package page2_20;


public class Calculator {
String plus; // 加
String minus; // 减
String multiplication; // 乘
String division; // 除
double numtotal;  //得数
double num1;      //第一个操作数
double num2;       //第二个操作数
int num3;         //加法 减法 乘法 除法  序号选择


public void show() {
switch (num3) {
case 1:
numtotal = num1 + num2;
break;
case 2:
numtotal = num1 - num2;
break;
case 3:
numtotal = num1 * num2;
break;
case 4:
numtotal = num1 / num2;
default:
break;
}


System.out.println("得数为:"+numtotal);
}
}


package page2_20;


import java.util.Scanner;


public class Text {
public static void main(String[] args) {
Calculator calculator = new Calculator();
calculator.plus = "+";
calculator.minus = "-";
calculator.multiplication = "*";
calculator.division = "/";
Scanner input = new Scanner(System.in);
System.out.println("请输入第一个操作数:");
calculator.num1 = input.nextInt();
System.out.println("请输入第二个操作数:");
calculator.num2 = input.nextInt();
System.out.println("请输入序列号:(1.加法2.减法3.乘法4.除法)");
calculator.num3 = input.nextInt();
calculator.show();
input.close();
}
}





3.假设当前时间是2015年5月12日10点11分00秒,编写一个CurrentTime类,设置属性为该时间,定义show()方法显示该时间。


package page2_20;


public class CurrentTime {
String year="2015";
String month="5";
String day="12";
String dot="10";
String minute="11";
String second="00";
    public void show() {
    System.out.println("当前时间是"+year+"年"+month+"月"+day+"日"+dot+"点"+minute+"分"+second+"秒");
    }
}


package page2_20;


public class CurTime {
       public static void main(String[] args) {
      CurrentTime curTime=new CurrentTime();
 curTime.show();
}
}


4.改进第3题,将当前时间改为2015年5月12日10点11分30秒。编写一个Demo类,改变CurrentTime类中设定的时间,并打印输出。

package page2_20;


public class Demo {
     public static void main(String[] args) {
    CurrentTime curTime=new CurrentTime();
    curTime.second="30";
    curTime.show();
}
}



5.使用类的方式描述计算机。

package page2_20;


public class Computer {
       String cpu="Intel(R)Core(TM)i5-5250U CPU @ 1.60GHz 1.60GHz";
       String 主板="Mac-937CB26E2E02BB01( MacBookAir7 2)";
       String 显示器="Color LCD";
       String 硬盘="APPLE SSD";
       String 内存="4G";
   public void show() {
  System.out.print("cpu为:"+cpu+"\n"+"主板为:"+主板+"\n"+"显示器为:"+显示器+"\n"+"硬盘为:"+硬盘+"\n"+"内存为:"+内存);
   }
public static void main(String[] args) {
Computer computer=new Computer();
computer.show();
}
}


6 某公司要开发新游戏,请用面向对象的思路设计英雄类,怪物类和武器类。

package page2_20;


public class Hero {
     String name="李小侠";   //名字
     int healthNum=300;   //生命值
 public void show() {
System.out.print("我是英雄,我的基本信息如下:"+"\n"+"姓名:"+name+","+"生命值:"+healthNum);
 }
}




public class Weapon {
String WeaponName="死神镰刀";
int ATK=12;
 
public void show() {
System.out.print("\n"+"我是武器,我的基本信息如下:"+"\n"+"武器名:"+WeaponName+","+"攻击力:"+ATK);
}
}



public class Monster {
            String monsterName="小龟";
            int healthMonsterNum=300;
            String monsterType="潜水类";
            
   public void show() {
  System.out.print("\n"+"我是怪物,我的基本信息如下:"+"\n"+"姓名:"+monsterName+","+"生命值:"+healthMonsterNum+","+"类型:"+monsterType);

   }        
}



public class Game {
public static void main(String[] args) {
 Hero hero=new Hero();
 Weapon weapon=new Weapon();
 Monster monster=new Monster();
   hero.show();
   weapon.show();
   monster.show(); 
}
}


阅读更多

没有更多推荐了,返回首页