最近项目不紧,闲的无聊,就阅读think in java,为了打发时间就出了几道题,就算总结把嘿嘿。有兴趣的朋友 可以做做。
一.基础测试
1.看下面代码回答问题:
package com.akson.test;
public class DataBasicTest
{
private static DataBasicTest databasictest = new DataBasicTest();//(1)
private DataBasicTest(){}//(2)
public static DataBasicTest getObj()//(3)
{
return databasictest;
}
private void datas()
{
byte b = 10;
char c = 'c';
double d = 515.99d;
System.out.println(b*c);//(4)
System.out.print((byte)d);//(5)
}
public static void main(String args[])
{
DataBasicTest test = DataBasicTest.getObj();
test.datas();
}
}
问题:
(1).请问代码中(1)(2)(3)处那样写法作用是什么,体现了什么思想?
(2)案例中(4)和(5)处的输出结果分别是多少?
2.看下面代码写出运行结果:
package com.akson.test;
public class Dobj {
Dobj(int i)
{
System.out.println("Dobj"+i);
}
public static class Inobj
{
Dobj d1 = new Dobj(1);
static Dobj d2 = new Dobj(2);
Inobj()
{
System.out.println("Inobj()");
}
static Dobj d3 = new Dobj(3);
}
public static void main(String[] args)
{
System.out.println("Welcom to you");
new Inobj();
}
static Inobj I = new Inobj();
}
运行结果:
3.我们知道Random类有一个名为nextInt()方法,给定一个
参数n他将返回一个大于等于0小于n的随机数,即0<=nextInt(n)<n,
请按下面要求把代码补充完整。
package com.akson.test;
import java.util.Random;
public class ArrayRandom
{
static Random rand = new Random();
static int lRand(int mod)
{
return Math.abs((1)) (2);
}
public static void main(String[] args)
{
Integer[] a = (3);
}
}
请在(1)(2)(3)中填入合适的代码,使数组a的长度在1到20之间。
先发这三道,好久没在CSDN上发帖了,欢迎热爱技术的广大朋友进行交流。