Java2实用教程——习题4

习题4

1.问答题

  1. 封装性、继承性、多态性、[抽象性]
  2. 单词开头字母大写(大驼峰命名法)
  3. 除开头字母其余单词开头字母大写(小驼峰命名法)
  4. 属性
  5. 行为
  6. new Class();时使用构造方法,构造方法没有类型
  7. 对象new之后就会被分配内存空间
  8. 即同名的方法实现不同的功能(一般是由于参数略有不同但是近似的功能),构造方法可以重载
  9. 可以,类变量(static变量)是属于类的,也可以理解为是该类创建的每个对象共享的,因此属于对象的实例方法可以操作类变量;不可以,类方法(static方法)是没有this指针作为参数的
  10. 不可以,同理类中的实例方法需要一个对象的this指针默认作为第一个参数
  11. this关键字代表指向当前对象的指针,当对象调用实例方法时,Object.method(其余参数),相当于method(this,其余参数),其中this是指向.运算符之前的Object的指针,因此this不可以出现在类方法中,因为类方法不会默认this作为第一个参数

2.选择题

  1. B
  2. D
  3. D
  4. D
  5. C&D
  6. 代码1 & 代码4
  7. 代码4

3.阅读程序

1
121
121
sum=-100
27
100
20.0

4.编程题

public class CPU {
    int speed;
    void setSpeed(int m){
        speed = m;
    }
    int getSpeed(){
        return speed;
    }
}

public class HardDisk {
    int amount;
    void setAmount(int m){
        amount = m;
    }
    int getAmount(){
        return amount;
    }
}

public class PC {
    CPU cpu;
    HardDisk HD;
    void setCPU(CPU c){
        cpu = c;
    }
    void setHardDisk(HardDisk h){
        HD = h;
    }
    void show(){
        System.out.println("CPU的速度为:"+cpu.getSpeed());
        System.out.println("硬盘的容量为:"+HD.getAmount());
    }
}

public class Test {
    public static void main(String args[]){
        CPU cpu = new CPU();
        cpu.speed = 2200;
        HardDisk disk = new HardDisk();
        disk.amount = 200;
        PC pc = new PC();
        pc.setCPU(cpu);
        pc.setHardDisk(disk);
        pc.show();
    }
}
CPU的速度为:2200
硬盘的容量为:200

你可能感兴趣的:(Java2实用教程,java,类)