Cinema

[Java]Java编程思想(Thinking in Java)第二章习题
Head Pic: 「miku 口哨糖」/「千夜QYS3」のイラスト [pixiv]练习1创建一个类,它包含一个...
扫描右侧二维码阅读全文
06
2019/01

[Java]Java编程思想(Thinking in Java)第二章习题

Head Pic: 「miku 口哨糖」/「千夜QYS3」のイラスト [pixiv]

练习1

创建一个类,它包含一个int域和char域,它们都没有被初始化,将它们的值打印出来,以验证Java执行了默认初始化。

package xyz.cinema000.thinkinginjava.exercise.chapter2;

class Test{
    int a;
    char c;
}

public class Exercise1 {
    public static void main(String[] args) {
        Test t = new Test();
        System.out.println(t.a);
        System.out.println(t.c);
    }
}
/* Output:
 * 0
 *  
 */

练习2

参照本章的HelloDate.java这个例子,创建一个Hello, World程序,该程序只要输出这句话即可。

package xyz.cinema000.thinkinginjava.exercise.chapter2;

public class Exercise2 {
    public static void main(String[] args) {
        System.out.println("Hello, World");
    }
}
/* Output:
 * Hello, World
 */

练习3

找出含有ATypeName的代码段,将其改为完整的程序。

package xyz.cinema000.thinkinginjava.exercise.chapter2;

class ATypeName{
    /* Class body goes here. */
}

public class Exercise3 {
    public static void main(String[] args) {
        ATypeName a = new ATypeName();
    }
}

练习4

DataOnly代码段改成一个程序。

package xyz.cinema000.thinkinginjava.exercise.chapter2;

class DataOnly{
    int i;
    double d;
    boolean b;
}

public class Exercise4 {
    public static void main(String[] args) {
        DataOnly data = new DataOnly();
        data.i = 47;
        data.d = 1.1;
        data.b = false;
    }
}

练习5

修改前一个练习,将DataOnly中的数据在main()方法中赋值并打印出来。

package xyz.cinema000.thinkinginjava.exercise.chapter2;

public class Exercise5{
    public static void main(String[] args){
        DataOnly data = new DataOnly();
        data.i = 47;
        data.d = 1.1;
        data.b = false;
        System.out.println(data.i);
        System.out.println(data.d);
        System.out.println(data.b);
    }
}
/* Output:
 * 47
 * 1.1
 * false
 */

练习6

编写一个程序,让它含有本章定义的storage()方法的代码段,并调用之。

package xyz.cinema000.thinkinginjava.exercise.chapter2;

public class Exercise6{
    public static int storage(String s){
        return s.length() * 2;
    }
  
    public static void main(String[] args){
        System.out.println(storage("Hello"));
    } 
}
/* Output:
 * 10
 */

练习7

Incrementable的代码段改写成一个完整的可运行程序。

package xyz.cinema000.thinkinginjava.exercise.chapter2;

class StaticTest{
    static int i = 47;
}

class Incrementable{
    static void increment(){
            StaticTest.i++;
    }
}

public class Exercise7{
    public static void main(String[] args){
        Incrementable.increment();
        System.out.println(StaticTest.i);
    }
}
/* Output:
 * 48
 */

练习8

编写一个程序,展示无论你创建了多少个特定类的对象,这个类中的某个特定的static域只有一个实例。

package xyz.cinema000.thinkinginjava.exercise.chapter2;

class Static{
    static int i = 0;
}

public class Exercise8{
    @SuppressWarnings("static-access")
    public static void main(String[] args){
        Static a = new Static();
        Static b = new Static();
        a.i++;
        System.out.println(a.i + "\n" + b.i);
        b.i++;
        System.out.println(a.i + "\n" + b.i);
    }
}
/* Output:
 * 1
 * 1
 * 2
 * 2
*/

练习9

编写一个程序,展示自动包装功能对所有基本类型和包装器类都起作用。

package xyz.cinema000.thinkinginjava.exercise.chapter2;

public class Exercise9{
    @SuppressWarnings("unused")
    public static void main(String[] args){
        Boolean bo = true;
        boolean b = bo;
      
        Character ch = 'x';
        char c = ch;
      
        Byte byt = 0;
        byte by = byt;
      
        Short sh = 0;
        short s = sh;
      
        Integer in = 0;
        int i = in;
      
        Long lo = 0L;
        long l = lo;
      
        Float fl = 0.0F;
        float f = fl;
      
        Double dou = 0.0;
        double d = dou;
    }
}

练习10

编写一个程序,打印从命令行获取的三个参数。

练习11

AllTheColorOfTheRainbow这个示例改写成一个程序。

练习12

HelloDate.java的第二个版本执行javadoc。

练习13

Documentation1.java,Documentation2.java,Documentation3.java执行javadoc。

练习14

在前一个练习的文档中加入各项的HTML列表。

练习15

通过练习2的程序,加入文档注释,并执行javadoc。

练习16

对第五章中Overloading.java加入文档注释,并执行javadoc。

Last modification:January 13th, 2019 at 01:14 am
If you think my article is useful to you, please feel free to appreciate

Leave a Comment