搜档网
当前位置:搜档网 › java程序练习题

java程序练习题

java程序练习题
java程序练习题

练习:

1.为类设计一个静态方法,实现检查输入字符串是否为”回文”.的功能

Boolean IsPalindrome(String poem)

2.用随机数对象产生0---1000范围内的不同整数,用以初始化一个M*N的二维数组(M*N<100),然后编程找出二维数组中的最大数和最小数,并将其交换位置。要求输出原始二维数组及交换后的二维数组。

3.设计一个类,并为其添加一个带有一个参数的构造函数,同时封装一个方法。当连续调用该方法时,依次产生下列元素输出

第一次调用输出:5 7 4 8 9 1

第二次调用输出:1 5 7 4 8 9

第三次调用输出:9 1 5 7 4 8

第四次调用输出:8 9 1 5 7 4

第五次调用输出:4 8 9 1 5 7

第六次调用输出:7 4 8 9 1 5

第一次调用输出:5 7 4 8 9 1

4.输入出租车公里数,输出应付的车费数:

收费标准如下:3000米以下为8元,每超过500米增加1.2元,不足500米按500米计算。

5.竹竿长10米,每天截取一半,过多少天后,竹竿长度会小于10厘米。

6.输入一个英文字符串,统计出其中各字符出现的次数,并以下列样式输出:

a=?,b=?,c=?,d=?,e=?

f=?,g=?,h=?,i=?,j=?

……

7.写一个实例方法,要求输入一个整数m ,并输出1---m之间满足下列条件的所有整数:这个数+1 是一个完全平方数,他的一半+1也是一个完全平方数。

8.设计一个类Complex,用于封装对复数的下列操作:

8.1.一个带参数的构造函数,用于初始化复数成员

8.2.一个不带参数的构造函数,调用代参数的构造函数完成对复数成员的初始化。

8.3. 实现两个复数的加法,减法的静态方法和实例方法。

8.4.以复数的标准形式:x+iy输出此复数

8.5. 写两个函数,分别获得复数的实部getReal(),getImage()和虚部。

9.写一个静态函数,返回给定整数n的所有因子

10.输入一个十六进制字符串,写一函数,将其转换为对应的十进制数。

11.设计一个只能创建一个唯一实例的类。

12.设计一个类,该类用于表示现代中国的一个典型家庭:father,mother,child.

并为其添加一个无参的构造函数和带三个参数的构造函数以及三个读写属性和

一个get(int member )方法,当member=FATHER时,返回

父亲的姓名;member=MOTHER时,返回母亲的姓名;member=CHILD时,返回

孩子的姓名;FATHER,MOTHER,CHILD 为常数。

13.巴黎时间比北京时间晚7个小时,纽约时间比北京时间晚12个小时,试编写一程序,

根据输入的北京时间输出相应的巴黎和纽约时间。

14.写一函数,实现用某一字符c 去填充字符串的左部,使其长度为恰好为L

PadLeft(String s,int L,char c),同理,实现PadRight((String s,int L,char c) 用字符c

填充串s 的右部,使其长度恰好为L.

15. 写一方法,用于删除字符串中所有空格(不仅仅是两端的空格),并返回没有空格的字

符串。

16.写一函数,用异或运算对一个字符串加密。

17. 写一函数reverseString(String s) 实现逆转一个字符串的功能

18.巴黎时间比北京时间晚7个小时,纽约时间比北京时间晚12个小时,根据输入的北京

时间,输出相应的巴黎时间和纽约时间。

19.输出下列样式的杨晖三角形

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

20. 写一个函数,输入一个阿拉伯数字,返回对应的人民币大写汉字字符。

21.写一个静态函数,输入一个字符串,当字符串全为数字字符时,返回true,否则,返回false.

22.设计一个类Path,该类实现对输入的文件名的各个部分进行解析的功能。即

完成下列函数功能:

String getFullPath()

String getPath() //只有路经p

String getFileName() //仅含文件名,没有路经

String getExtension() //只有扩展名。如果没有扩展名,则返回空串

23.某人卖鸡蛋,第一天卖掉全部鸡蛋的一半又半个,第二天卖掉剩下鸡蛋的一半又半个,。。。。。。以后每天都卖掉前一天剩下鸡蛋的一半又半个。第18天卖掉最后的2个鸡蛋。

试编程求出此人共有多少个鸡蛋。

24.中国古代韩信点兵问题:3个3个数,最后剩2个,4个4个数,最后剩3个, n个n个数,最后剩n-1个, 假设n=9,问,这支部队至少有多少人?

分析部队人数最少是3,4,9的最小公倍数-1为35人

25. 下面是一个10位的身份证号编码规则:

25.1.长度为10位,下标为N1---N10(从左到右)

25.3.验证公式:(N1的十位数*1+ N1的个位数*9 +

+N2*8+N3*7+N4*6+N5*5+N6*4+N7*3+N8*2+N9*1+N10*1)/10

如果余数为0,则身份证号合法,否则非法

其中N2只能取1 (男)或 2 (女)

25.4.N3---N10为数字;

例如:身份证号F213454788 为一个合法身份证号

写一个函数IsValid,输入一个10位的身份证号,返回一个整数: 1 有效,0 无效

26.求双精度数d 按照5 舍6 入的规则运算后的结果。

27.设计一个Rectangle类,并实现偏移矩形位置函数Offset(int dx,int dy);缩放矩形函数

Inflate(dx,dy),获得矩形大小(Dimension),获得矩形左上角坐标(Point),获得矩形右下角坐标(Point), 获得矩形中心点坐标(Point),获得矩形对角线长度(diagonalLength)

28.定义一个满足下列条件的学生类,并创建其对象,进行测试,此学生拥有姓名,出生日期,血型,

成绩(为一个数组,可存放5门课程的成绩)。并且此类提供接受分数输入的方法,计算并返回总分即平均分数的方法。

29. 实现一个六舍7入的函数static public double round(double d,int precision){}

30.写一个函数,输入年份和月份,返回本月的最后一天是几号:

int lastDay(int year,int month)

31.请使用StringTokenizer类,将字符串按单词拆分,然后逆序输出。

“2008年奥运会中国金牌冠军” ”金牌冠军中国奥运会2008年”

32.完成下列类:

class Student implements Comparable{

String name;

Int scoreMath,scoreEnglish,scoreChinese;

Student(){

//添加初始化代码

}

Student(String name,int scoreMath,int scoreEnglish,int scoreChinese;){

//添加初始化代码

}

//求平均分

float avg(){

}

//比较平均分

public int compareTo(Object obj){

}

//其它必要方法定义

}

当代码完成后,创建Student 型数组,并初始化。然后使用Arrays.sort() 方法对其进行升序排序。

33.生成0-9000之间的10000个随机整数,并统计各个数出现的次数和频率(用XX。X%表示)。

10==〉XX。%

20==〉XX。%

。。。。。。.用HashMap实现。

34.在命令行输入年份和月份,打印输出月历。

日一二三四五六

1 2 3

35.使用Vector类,制作一个通信录

通信录内容:名字、地址、电话号码、其它等等

通信录功能:添加、删除、查找、输出。

36.设计一个星座类,并为其添加一个带参数的构造函数,

class Constellation{

private Calendar birthday;

public Constellation(String birthday){

}

String getConstellation(){返回星座

}

int getBornYear(){

}

int getBornMonth(){

}

int getBornDay(){

}

}

出生日期与星座关系如下:

1.20---

2.18 水瓶座

2.19----

3.20 双鱼座

3.21----

4.19. 牧羊座

4.20---

5.20 金牛座

5.21-----

6.21双子座

6.22.----

7.22巨蟹座

7.23----8.22 狮子座

8.23----9.22 处女座

9.23.----10.23天秤座

10.24-----11.22天蝎座

11.23---12.21 射手座

12.22.----1.19 山羊座

37.写一个函数:输入一个字符串(该字符串由若干个特殊字符分隔),返回一个字符串数组。

String[] breakString(String str)

例如:输入:”中国北京美国华盛顿英国伦敦"; 字符串由TAB 键,空格等字符分隔而成。返回: 元素1=中国北京元素2=美国华盛顿元素3=英国伦敦

38.根据下列要求,完成具有下列功能的组件,假设组件封装在类Hex中。

功能要求如下:

38.1.提供下列静态方法:

检查字符串是否为合法的十六进制数(每一个字符由0—9,A—F组成)

static private boolean IsHex(string HexString)

将十进制数转换为十六进制字符串

static public S tring LongToHex(long n)

将十六进制字符串转换为十进制数。

static public long HexToLong(string hexString)

38.2.提供两个重载的构造函数

public Hex(string HexString)

//用十进制数构造一个十六进制字符串

public Hex(long Number)

38.3.覆盖祖先类的方法toString(),使其输出十六进制字符串

public String ToString()

38.4.提供只读属性,获取十六进制字符串

public String HexString

38.5.提供实例方法,将本对象转换为十进制数

//转换为十进制数

public long ToLong()

{

return HexToLong(m_HexString);

}

38.6.提供类型转换功能,将本对象显示转换(为long)

static public long(Hex hex)

38.7.提供将长整形显示转换本对象(Hex)

static public Hex(long n)

39.编写应用程序,求1!+2!+ (10)

40.编写一个函数:输入一个整数n,并将1—n以内的全部素数返回,

41.一个数如果恰好等于它的因子(不包含自身)之和,这个数称为完数,编写应用程序,求1000以内的所有完数,8000以内的完数。

42.编写应用程序,分别使用while 和 for 循环计算8+88+888+…的前10项之和,前15项之和。

43.编写应用程序,输出满足1+2+3+…+n<8888的最大正整数n.

44.使用StringBuffer类,构建字符堆栈

public class CharStack{

private StringBuffer stack;

public CharStack(){

statck=new StringBuffer();

}

public CharStack(int capacity){

statck=new StringBuffer(capacity);

}

public void push(char c){

//将字符压入堆栈……

}

public int pop(){

//将字符弹出堆栈……

}

public char[] list(){

//返回堆栈数组……

}

public String toString(){

//将堆栈中的字符转换为字符串…

}

}

45.写一个函数:输入一个字符串(该字符串由若干个特殊字符分隔),返回一个字符串数组。

String[] breakString(String str)

例如:输入:”中国北京美国华盛顿英国伦敦"; 字符串由TAB 键,空格等字符分隔而成。返回: 元素1=中国北京元素2=美国华盛顿元素3=英国伦敦

46.随机产生一个小写字母组成的字符串。

47.用字符串操作函数实现对浮点数进行四舍五入到小数点后n 为小数的类。如果进行6舍7入又该如何实现呢?

例如:1。23458 , 保留3位小数后的字符串为1.235

48.用字符串操作函数实现对整数进行格式化为m位长度的函数。

例如:整数18, 格式化为4位长度的字符串为0018

49. 编写一个类,该类有一个方法public int f(int a,int b),返回a,b的最大公约数。然后编写一个从该类派生的子类,并重写祖先的 f 方法,且返回a,b 的最小公倍数。要求在子类重写父类方法时,首先调用父类的方法f获得最大公约数m,然后再用公式(a*b)/m 获得最小公倍数。最后写一个测试程序,分别调用父类和子类的方法。如果将f 改为接口应该如何使用?

50. 写一个方法:int DateDiff(int field, Date fromDate,Date toDate)用于求两个日期

toDate-fromDate的差的field 值

field取值为下列常数:

YEAR, MONTH , DAY分别表示年月日

HOUR MINUTE SECOND 分别表示时分秒

51.封装一个对单向链表的操作,要求:申请一个头指针

firstNode=new Node(), 使其指针域指向链表的第一个节点,然后为其添加一些基本操作:

1.在链表头部插入节点

2.在链表尾部插入节点

3.在链表第I个位置插入节点

4.删除链表头部节点

5. 删除链表尾部节点

6. 删除链表第I个位置节点

7.获得节点总数

52. 用HashMap保存文件post.txt中的所有数据。并提供下列静态方法:

1.获得所有的省名称

2.获得城市信息

3.获得城市名

4.获得省总数

提示:首先定义描述一个城市信息的类

53.写一个函数,返回m—n(m,n均为正整数,且m

54.编写一个检查java表达式中括号是否成对出现的函数。例如:

String exp1=Math.sqrt(p*(p-a[0])*(p-a[1])*(p-a[2])); 中括号是配对的,而

String exp2=Math.sqrt(p*(p-a[0]*(p-a[1])*(p-a[2])); 中括号是不配对的

55.编写一个客户机服务器程序,用以实现如下功能:客户机箱服务器发送10个整数,服务器计算

这10个数字的和,然后,将和送给客户机。

56.编写一个客户机服务器程序,用以实现如下功能:客户机箱服务器发送10个整数,服务器计算

这10个数字进行排序,然后,将10个整数送给客户机。

57.编写一个客户机服务器程序,用以实现如下功能:客户机向服务器发送字符串,服务器接收这个

串,并以单词为单位进行拆分,然后,将结果送给客户机。

58.用Socket编写一个”公众聊天室”的应用程序。

59.设计一个具有事件的JavaBean,其内部用一个线程产生随机的三位整数,如果产生了一个三位完全相同的数字,则触发事件。

60.设计一个具有事件的JavaBean,用于完成对某文件的处理,当处理到某个省的城市数>100时,触发事件,并在事件中提供该省名称,城市总数。

61.如果主程序需要处理一个耗时相当长的操作,同时又需要每隔一定时间(如30分钟)弹出一个对话框显示当前时间,应当如何设计这样的程序。

62.用RMI设计一个远程方法调用程序,实现方法

public int[] getPrime(int m) 即根据输入参数 m ,返回<=m的所有素数。

63.用RMI设计一个远程方法调用程序,当客户调用方法 getStandardDate() 时,返回标准日期;当客户调用方法 getStandardTime() 时,返回标准时间。

64.用RMI设计一个远程方法调用程序,用以实现聊天程序。

65.用RMI设计一个远程调用程序,当用户输入一个城市编码时,输出该编码对应的意义。城市编码及意义对照表从xzqhbm.txt文件中获得。

66.将计算星座问题设计为一个远程服务: public String getConstellation(Date d),供客户调用。

67.将第25.题,作为一个远程服务,供客户调用,用以验证10位身份证号的真伪。

68.有一只老猴带领9只小猴到桃山上踩摘桃子,当它们劳累一天回来后,老猴说:大家都去睡觉,明天再分这些桃子。然而,小猴子们都不甘心,觉得劳累一天还不允许我们吃桃,于是,睡着睡着,其中第一只悄悄起来,首先吃掉一个,然后将其10等分,同时拿走自己应得的一份睡觉去了,又过了一会,第2支小猴子悄悄起来,也首先吃掉一个,然后将其10等分,同时拿走自己应得的一份睡觉去了,如此,第3只小猴,第4只小猴,直至第9只小猴,都悄悄起来,并重复第一只小猴子的做法,还是老猴子遵守自己的承诺,第二天早晨起来一看,还剩下一些桃子。试编程计算,前一天老猴带领小猴至少踩摘了多少桃子?

69. 设计一方法,用于检查字符串形式的日期的合法性:

public boolean isValidDate(String csrq) .要求,程序能够识别下列形式的日期:

yyyy-mm-dd; yyyy-m-dd; yyyy-m-d; yyyy-mm-d;

yyyy/mm/dd; yyyy/m/dd; yyyy/m/d; yyyy/mm/d;

yyyy.mm.dd; yyyy.m.dd; yyyy.m.d; yyyy.mm.d

70. 设计一方法,用于检查中国公民身份证号有效性。有效性规则如下:

A.身份证号长度为15位或18位

B.身份证号中出生日期是有效性的

C.身份证号中的字符,除18位身份证号的最后一位可以为?x?外,其余各位均为数字字符。71.设计一个对身份证号进行封装的类,用于提供下列方法:

A.获得出生日期

B.获得性别

C.获得行政区划

D.检查身份证号的有效性

E. 输出版本号和作者信息。

说明:

A. 15位身份证号编码规则:1—6 位为行政区划,7—12位为出生日期

13—15位序号,其中15位为性别编码,

奇数表示男,偶数表示女

B. 18位身份证号编码规则:1—6 位为行政区划,7—14位为出生日期

15—17位序号,其中17位为性别编码,奇数表示男,偶数表示女

18位为校验码

要求将该类作为一个组件,并将其打包(.jar文件)

72. 利用File类封装一个Directory类,并提供下列静态方法:

final class Directory{

static boolean CreateDirectory(string Path) //创建目录对象

static boolean Delete(string Path,bool force) //删除目录,force=true 表示强制删除本目录及其所有子目录。

static boolean Exists(string Path) //目录存在返回true

static long getCreateTime(path) //获得创建时间

static long getLastAccessTime(path) //获得最近一次访问时间

static long getLastWriteTime(path) //获得最近一次修改时间

static string[] GetDirectories(path) //获取Path目录中所有子目录

static string[] GetDirectories(path,pattern) //获取Path目录中与pattern匹配的所有子目录

static string[] GetFiles(path)//获取当前目录中所有文件名

static string[] GetFiles(path,filterpattern)//获取Path目录中所有与FilterPattern匹配的文件名

static String[] GetFileSystemEntries(path)//获取当前目录中所有文件和子目录的名称

static String[] GetFileSystemEntries(path,pattern)/获取目录中与pattern匹配的所有文件和子目录的名称

}

73. 利用File类封装一个FileOp类,并提供下列静态方法

final class FileOp{

static delete(String sorce) 删除文件

static getCreateTime(FileName)

static getLastAccessTime(FileName)

static getLastWrites(FileName)

}

74. 利用File类封装一个Path类,并提供下列静态方法

final class Path{

static string getDirectoryName(Path)//获得文件夹名

static string getFileName(Path) //仅文件名(包括扩展名)

static string getExtension(Path) //获得扩展名

static string getPathRoot(path) //获得指定路径的根目录名

}

75.制作一个显示图片的组件。要求,可以接受文件名参数和接受byte[]数组参数。

76.制作一个文件分割和合并程序。

77.设计一个从xp2.dat文件中吸取照片的程序。

78.设计一个图片显示组件,并用该组件设计图片浏览(类似于AcdSee功能)

79. 定义一个含有30个整形元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序每5个数求出一个平均值,放在另一个数组中输出。

80.通过循环为5*5数组赋值 1—25的自然数,然后输出该数组的左下三角。

81.编写程序,实现下列输出7*7 方阵

1 1 1 1 1 1 1

1 2 2 2 2 2 1

1 2 3 3 3 2 1

1 2 3 4 3 2 1

1 2 3 3 3 2 1

1 2 2 2 2 2 1

1 1 1 1 1 1 1

82.编写一个检查二维数组(n*n)是否对称,即对所有I,j都有a[I][j]=a[j][I]

83.设计一函数,输入若干个整数,返回这些整数的最大公约数。如果要返回这些数的最小公倍数呢?

84.设计一函数,检查输入的5位字符串是否为连续的数字字符。如23456,01234,98765

85.用正则表达式,设计以函数,用以获得字符串尾部的数字或字母。如:?到第8?, ?到第12?,”去A”

86.用正则表达式分离如下列字符串所示的各个部分

a)大步的快走 b)小步的快走 c)不快,仰著头面对著世界d)不快,低著头 e)很慢

a)第一步3米 b) 第二步4米c) 第三步9米

87.世界卫生组织提供的健康标准:

体重指数公式:BMI=体重(kg)/(身高(m)* 身高(m))

当BMI <18.5 时属于偏瘦。加强锻炼,适当补充营养"

当BMI在18.5—25 时属于正常范围,继续保持

当BMI >25--<30 时属于超重。

当BMI >30 时属于较肥胖。要加强锻炼,不吃零食和高热量、高脂肪食物!

88.设计一个方法,用户输入春季,程序输出12,1,2月份;

夏季,程序输出3,4,5月份;

秋季,程序输出6,7,8月份;

冬季,程序输出9,10,11月份;

其它,程序输出”不存在的月份”

89.编写一个加密类,在其中实现对字符数组的加密和解密方法。加密原理是:

加密后的字符数组的第一个字符是原字符数组的最后一个自负,其余的每个字符是对应的原字符数组中的前一个字符的值加上3。比如:{…w?,?e?,?i?,?c?,?o?,?m?,?e?},末尾的字符为?e?, {…w?,?e?,?i?,?c?,?o?,?m?}依次加上3后成为{…z?,?h?,?o?,?f?,?r?,?p?},故加密后的结果为

{…e?,…z?,?h?,?o?,?f?,?r?,?p?}

90.设计一个类,在其中实现计算两个数的平方和的方法,要求支持int 和double

类设计练习:

0.设计一个表示出生日期的类.用整形数表示出生年、月、日

提供一个无参构造函数和带三个参数的构造函数,并提供一个方法用以显示

此人的出生日期,显示格式为:XXXX年XX月XX日(年份为4位,月份和日分别为2位)。1.定义一个表示平面中的点的类Point,并提供两个构造函数

其中一个无参构造函数,一个带有两个参数(x,y)的构造函数

提供方法:offset,用于将该点相对移动一个偏移(deltaX,deltaY)

2设计一个Size类,用来描述一个具有宽度和高度的形状,并提供改变宽度或高度的方法,

3.设计一个描述矩形的类Rectangle,可以借助于上面的两个类

并提供返回宽度、高度及坐标的方法

4.试定义一个Mathematics类,它具有下列静态成员

double abs(double x)

int abs(int x)

double max (double x,double y)

int max (int x,int y)

double round(double x, int precision)

5. 定义一个表示人的类:

属性:姓名,身高,出生日期,血型

方法:返回人的基本信息:

姓名=,身高=,出生日期=,血型=

6.用字符串操作函数实现对整数进行格式化为m位长度的函数。

7. 设计一个员工类。该员工具有下列私有属性:编号,姓名,基本工资,奖金

提供有参构造函数:Employee(Strng ID,String name),

提供上述私有属性的读写函数.

提供计算个人所得税的方法: 所得税=(基本工资+奖金-1600)*15% (基本工资+奖金>1600 的部分才计算所得税)

提供计算员工实发工资的方法: 实发工资=基本工资+奖金-所得税.

8.根据下列要求,完成具有下列功能的组件,假设组件封装在类Hex中。

功能要求如下:

8.1.提供下列静态方法:

检查字符串是否为合法的十六进制数(每一个字符由0—9,A—F组成)

static private boolean IsHex(string HexString)

将十进制数转换为十六进制字符串

static public S tring LongToHex(long n)

将十六进制字符串转换为十进制数。

static public long HexToLong(string hexString)

8.2.提供两个重载的构造函数

public Hex(string HexString)

//用十进制数构造一个十六进制字符串

public Hex(long Number)

8.3.覆盖祖先类的方法toString(),使其输出十六进制字符串

public String ToString()

8.4.提供只读属性,获取十六进制字符串

public String HexString

8.5.提供实例方法,将本对象转换为十进制数

//转换为十进制数

public long ToLong()

{

return HexToLong(m_HexString);

}

8.6.提供类型转换功能,将本对象显示转换(为long)

static public long(Hex hex)

8.7.提供将长整形显示转换本对象(Hex)

static public Hex(long n)

9. 设计两个类:Point 描述一个点;Distance 描述两点之间的距离(这是一个典型的类组合)

class Point{

private int x,y;

public Point(){}

Point Point(Point p) //用拷贝而不是引用

Int getX(){}

Int getY(){}

}

class Distance{

private Point p1,p2;

double dist;

public Distance(Point p1,Point p2){}

public getDistance){}

public static getDistance(Point p1,Point p2) //方法重载

}

9. 设计一个类,包含静态数据成员,静态方法,常量。同时用一个方法对该类的各个成

员进行测试。

10.设计一个类,其中包含两个求最大值的重载方法:

int max(int x,int y)

double(double a,double b)

11. 设计一个类Triangle ,用于描述一个三角形,其数据成员有a,b,c分别表示她的三条边,

添加一个构造函数带三个参数构造函数。同时添加两个同名方法

void modify(int total),将参数total 分为三部分,使其恰好组成一个三角形,

boolean modify(int a,int b, int c) ,如果给出的三个参数不能组成三角形,则返回false, 和方法double getArea() 返回三角形面积

12. 阅读下列程序,并写出结果:

public class MyDate{

public int year,month,day;

public MyDate(int year,int month,int day;){

this.year=year;

this.month=month;

this.day=day;

}

public void setYear(int y){

yaer=y;

}

public void setMonth(int m){

month=n;

}

public void setDay(int d){

day=d;

}

}

public class ChangeDate{

public static void changeDate_1(MyDate myDate){

myDate=new MyDate(1979,5,1);

}

public static void changeDate_2(MyDate myDate){

myDate.setMonth(10);

}

public static void main(String[] args){

MyDate date=new MyDate(2001,9,11);

changeDate_1(date);

changeDate_2(date);

System.out.println(date.year+”-“+date.month+”-“+date.day);

}

}

11.常用的伪随机数算法如下:

Y0=1

Y k+1=(a*Y k+c) mod m

X k=Y k mod n

其中,a叫做乘数,c 叫做增数,m 叫做模数,mod 表示取模运算,所得到的序列X k就叫做伪随机数序列。可以取a=16807(即7^5),m=2147483647(2^31-1), c=0.

使用该算法封装一个类,并提供两个重载的方法

next(int upper)产生一个[0--- upper]范围的随机数。

next(int int low,int upper)产生一个[low--- upper]范围的随机数。

4. 编写BankAccount类,要求如下:

4.1. 该类由此款人姓名(name :String ),存款余额(balance: double),存期(year:int)及年利

率(rate: double)四个数据成员,其中年利率的默认值为0.01.

4.2. 该类有两个重载的构造方法.其中一个构造方法不含参数,设置默认的存款为10元,存期一年;另一个沟造函数包含二个用于创建对象时设置存款额与存期的参数。

4.3. 该类有三个方法:存款(save),取款(fetch)及计算存期满后的总金额(calcTotal).

4.4. 创建一个账号fans,创建时即(利用构造函数)存入1000元,存期3年,后又存入2000元(利用save方法),计算存期满后的总金额(利用calcTotal方法)

5.编写一个加密类,在其中实现对字符数组的加密和解密方法。加密原理是:

加密后的字符数组的第一个字符是原字符数组的最后一个自负,其余的每个字符是对应的原字符数组中的前一个字符的值加上3。比如:{…w?,?e?,?i?,?c?,?o?,?m?,?e?},末尾的字符为?e?, {…w?,?e?,?i?,?c?,?o?,?m?}依次加上3后成为{…z?,?h?,?o?,?f?,?r?,?p?},故加密后的结果为

{…e?,…z?,?h?,?o?,?f?,?r?,?p?}

(完整word版)Java试题

《Java语言程序设计》 一.选择题:本 大题共20小 题;每小题1 分,共20分。 在每小题给出 的四个选择中,只有一项是符合题目要求的,把所 选择项前的字母填在题后的括号内。 1.一个Java源程序编译后生成的文件为 Test.class,则运行该程序应该使用的命令为 ()。 (A)javac Test (B)javac Test.class (C)java Test (D)java Test.class 2. 下面数据类型的定义中错误的是()。 (A)int a = 10; (B)double d = 1.2; (C)float f = 1.2; (D)char c = ‘A’; 3. 类可以保护它的成员变量和成员函数不会被其 他对象随意访问到,这一特性属于类的()。 (A)封装性(B)继承性 (C)多态性(D)重载 4. 以下关于字符串类的说法正确的是()。 (A)String类用于字符串变量,而 StringBuffer类用于字符串常量 (B)String类用于字符串常量,而 StringBuffer类用于字符串变量 (C)String类的对象只能用“new”关键字 生成 (D)StringBuffer字符串的容量是指字符串 中字符的个数 5. 在Java的异常处理语句中对finally的描述正 确的是()。 (A)不管是否发生异常,finally中的程序 都要执行 (B)只有不发生异常时,finally中的程序 才需要执行 (C)只有异常发生时,finally中的程序才 需要执行 (D)不管是否发生异常,finally中的程序 都不会执行 6. 在子类的定义中有一个和父类同名的成员函 数,这一现象称为函数的()。 (A)继承(B)覆盖 (C)错误(D)重载 7. 下面文件操作中哪一个方法是用来一次创建多 个目录的()。 (A)createNewFiles() (B)mkdir() (C)isDirectory() (D)mkdirs() 8. 在基于Swing的图形用户界面设计中,下面哪 一个属于中间级容器()。

JAVA程序设计习题库及答案

第一章JAVA语言概论 一、选择题 1。下列不属于java语言鲁棒性特点的是:A.java能检查程序在变异和运行时的错误 B。java 能运行虚拟机实现跨平台 C。java 自己操纵内存减少了内存出错的可能性D。java 还实现了真数组,避免了覆盖数据的可能2.java语言的执行模式是: A。全编译型 B.全解释型 C.半编译和半解释型 D.同脚本语言的解释模式 3.下列关于虚拟机说法错误的是: A。虚拟机可以用软件实现 B.虚拟机部可以用硬件实现 C.字节码是虚拟机的机器码 D.虚拟机把代码程序与各操作系统和硬件分开 4。java语言是1995年由()公司发布的 A.Sun B。Microsoft C.Borland D.Fox Software 5.下列不是虚拟机执行过程特点的是 A。双线程

B.多线程 C.动态链接 D.异常处理 6.java以JVM为基础,最下层是移植接口,由适配器和()组成A.网卡 B。Java os C。Java基本类 D。Java 应用程序和applet小程序 7。java程序的执行过程中用到一套JDK工具,其中javac.exe指A.java语言编译器 B.java字节码解释器 C.java文档生成器 D.java类分解器 8.java的API结构中,不属于类库主要包括的核心包的是 A.java包 B。javax C.javadoc包 D.org扩展包 9.每个java的编译单元可包含多个类或界面,但是每个编译单元最多只 能有()类或者界面是公共的 A.一个 B。两个 C。四个 D。任意多个

10.在当前的java实现中,每个编译单元就是一个以()为后缀的文件 A。java B.class C。doc D.exe 二、填空题 1. 1991年,SUN公司的Jame Gosling和Bill Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个____软件,它是java的前身. 2. java是一个网络编程语言,简单易学,利用了____的技术基础,但又独立于硬件结构,具有可移植性、健壮性、安全性、高性能。 3. java可以跨平台的原因是____ 4. JVM的执行过程有三个特点:多线程,_____,异常处理; 5.JAVA程序的安全性体现在多个层次上,在_____,有语法检查;在解释层上,有字节码校验器、测试代码段格式和规则检查,访问权限和类型转换和法性检查,操作数堆栈的上溢或下溢,代码参数类型合法性等;在平台层上,通过配置策略,可设定访问资源域,而无需区分本地或远程。 6。 JAVA的产品主流操作系统平台是Solaris、_____和Macintosh. 7. JAVA系统运行时,通过______机制周期性的释放无用对象所使用的内存,完成对象的清除。 8。在JAVA语言中,将后缀名为______的源代码文件编译后形成后缀名为.c lass的字节码文件。 9。 JAVA语言的执行模式是半编译和______. 10. JAVA类库具有_____的特点,保证了软件的可移植性。 11。在编写执行JAVA程序的过程中需要用到一些工具,SUN公司为我们提供了一套JDK工具,它主要包括:javac.exe、java。exe、_____、ja vap.exe、jkb。exe 12.JAVA程序包括源代码(.java文件)、______、由归档工具jar生成的。jar文件、对象状态序列化.ser文件.

Java基础知识问答题

Java 基础知识问答题 包含的模块 本文分为十九个模块,分别是:Java 基础、容器、多线程、反射、对象拷贝、Java Web 、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、MyBatis、RabbitMQ、Kafka、Zookeeper、MySQL、Redis、JVM,如下图所示:

共包含208 道问答题,本文的宗旨是为读者朋友们整理一份基础知识的简单大纲,下面一起进入主题吧。 Java 基础 1. JDK 和JRE 有什么区别?

?JDK:Java Development Kit 的简称,Java 开发工具包,提供了Java 的开发环境和运行环境。 ?JRE:Java Runtime Environment 的简称,Java 运行环境,为Java 的运行提供了所需环境。 具体来说JDK 其实包含了JRE,同时还包含了编译Java 源码的编译器Javac,还包含了很多Java 程序调试和分析的工具。简单来说:如果你需要运行Java 程序,只需安装JRE 就可以了,如果你需要编写Java 程序,需要安装JDK。 2. == 和equals 的区别是什么? == 解读 对于基本类型和引用类型== 的作用效果是不同的,如下所示: ?基本类型:比较的是值是否相同; ?引用类型:比较的是引用是否相同; 代码示例: String x = "string"; String y = "string"; String z = new String("string"); System.out.println(x==y); // true System.out.println(x==z); // false System.out.println(x.equals(y)); // true System.out.println(x.equals(z)); // true 代码解读:因为x 和y 指向的是同一个引用,所以== 也是true,而new String()方法则重写开辟了内存空间,所以== 结果为false,而equals 比较的一直是值,所以结果都为true。 equals 解读

JAVA程序设计习题

JAVA程序设计习题1 一、单选题 1.编译Java Application源程序文件将产生相应的字节码文件,扩展名为哪一个? A.java B.class C.html D.exe 2.下面哪一个特性不是面向对象编程主要体现的? A.封装性 B.继承 C.多态 D.类 3.设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x的值是哪一个? A.3 B.3.5 C.4 D.5 4.以下标识符中,哪个是无效的标识符? A.IDoLikeTheLongNameClass B.$byte C.ok D. const 5.Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点? A.安全性B.多线性C.跨平台D.可移植 6.Applet可以做下列哪些操作? A.读取客户端文件B.在客户端主机上创建新文件 C.在客户端装载程序库D.读取客户端部分系统变量 7.以下声明合法的是哪一个? A.default String s;B.public final static int w( ) C.abstract double d;D.abstract final double hyperbolicCosine( ) 8.以下选项中循环结构合法的是哪一个? A. while (int i<7) { i++; System.out.println(“i is “+i); } B. int j=3; while(j) { System.out.println(“ j is “+j); } C. int j=0; for(int k=0; j + k !=10; j++,k++) { System.out.println(“ j is “+ j + “k is”+ k); } D. int j=0;

JAVA期末考试试卷

天津城市建设学院2007~2008学年第二学期 《 java 语言程序设计A 》 试题A 卷 课程号:073101-0 试卷说明:闭卷考试,时间120分钟。 一、 填空(本题共15空,每空2分,共30分) 1.如果一个java 源程序文件中定义有4个类,使用sun 公司的JDK 编译器javac 编译该源程序文件将产生_____4___个文件名与类名相同扩展名为___.Class_____的字节码文件。 2.Java 中所有类都是类 __Object__的子类。 3.请填出在java .lang 包中与下列基本数据类型相对应的封装类: float :java .lang .Float , char : _ java .Lang.char_______, boolean : ___ java .Lang.boolean_____。 4.被关键字____final______修饰的方法是不能被当前类的子类重新定义的方法 5.线程的四种状态是__新建_____ 、_运行_ 、_中断 、__死亡___。 6.java 语言中__https://www.sodocs.net/doc/1c17336930.html,ng.Objet ___是所有类的根。 7.Swing 的事件处理机制包括__事件的监听者__、事件和事件处理者。 8.URL_____Uniform Resourse Locator_____是的缩写。 9.java 有两类应用程序java Application 和____java 10.转义字符以___\__开头。 二、选择(本题共20小题,每题2分,共40分) 1.欲构造ArrayList 类的一个实例,此类继承了List 接口,下列哪个方法是正确的 ? ( B ) A 、 ArrayList myList=new Object (); B 、 List myList=new ArrayList (); C 、 ArrayList myList=new List (); D 、 List myList=new List (); 2.paint()方法使用哪种类型的参数? ( A ) A 、 Graphics B 、 Graphics2D C 、 String D 、 Color 3.指出正确的表达式 ( C ) A 、 byte=128; B 、 Boolean=null; C 、 long l=0xfffL; D 、 double=0.9239d; 4.指出下列程序运行的结果 ( B ) public class Example{ String str=new String("good"); char[]ch={'a','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex .change(ex .str,ex .ch); System .out .print(ex .str+" and "); Sytem .out .print(ex .ch); } public void change(String str,char ch[]){ str="test ok"; ch[0]='g'; } } B 、 good and abc B 、 good and gbc C 、test ok and abc D 、 test ok and gbc 5.运行下列程序, 会产生什么结果 ( A )

《JAVA语言程序设计》期末考试试题及答案(应考必备题库)

《JA V A语言程序设计》期末考试试题及答案2(应考必备题库) 一.判断题 1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×)1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×3.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(×)4.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。(×)5.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。(√)6.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。(√)7.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。(×)8.静态初始化器是在其所属的类加载内存时由系统自动调用执行。(√)9.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。(×) 二.单项选择题 1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?() A、String args B、String ar[] C、Char arg D、StringBuffer args[] 2.以下关于继承的叙述正确的是()。 A、在Java中类只允许单一继承 B、在Java中一个类只能实现一个接口 C、在Java中一个类不能同时继承一个类和实现一个接口 D、在Java中接口只允许单一继承 3.paint()方法使用哪种类型的参数? () A、Graphics B、Graphics2D C、String D、Color 4.以下哪个不是Java的原始数据类型() A、int B、Boolean C、float D、char

Java基础知识笔试题及答案2

1.Java中提供了名为()的包装类来包装原始字符串类型。 A.Integer B.Char C.Double D.String 2.https://www.sodocs.net/doc/1c17336930.html,ng包的()方法比较两个对象是否相等,相等返回true。 A.toString()B.equals()C.compare()D.以上所有选项都不正确3.使用()方法可以获得Calendar类的实例。 A.get()B.equals()C.getTime()D.getInstance() 4.下面的集合中,()不可以存储重复元素。 A.Set B.Collection C.Map D.List 5.关于Map和List,下面说法正确的是()。 A.Map继承List B.List中可以保存Map或List C.Map和List只能保存从数据库中取出的数据 D.Map的value可以是List或Map 6.给定如下Java代码,编译运行的结果是()。 Import java.util.*; public class Test { public static void main(String[] args) { LinkedList list=new LinkedList(); list.add(“A”); list.add(2,”B”); String s=(String)list.get(1); System.out.println(s); }

A.编译时发生错误B.运行时引发异常C.正确运行,输出:A D.正确运行,输出:B ###############################################################3 3.所有异常的父类是()。 A.Error B.Throwable C.RuntimeException D.Exception 4.下列()操作不会抛出异常。 A.除数为零B.用负数索引访问数组 C.打开不存在的文件D.以上都会抛出异常 5.能单独和finally语句一起使用的块是()。 A.try B.throws C.throw D.catch 6.在多重catch块中同时使用下列类时,()异常类应该最后列出。 A.Exception B.ArrayIndexOutOfBoundsException C.NumberFormatException D.ArithmeticException 7.执行下面的代码会引发()异常。 String str=null; String strTest=new String(str); A.InvalidArgumentException B.IllegalArgumentException C.NullPointerException D.ArithmeticException 8.这段代码的输出结果是()。 try{ System.out.print(“try,“); return; } catch(Exception e){ System.out.print(“catch,“); } finally { System.out.print(“finally”);

Java程序设计习题附答案(一)

Java程序设计题库 第一部分绪论 1、下列关于Java语言的特点,描述错误的是(C) A.Java是跨平台的编程语言B.Java支持分布式计算 C.Java是面向过程的编程语言D.Java支持多线程 2、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?(B) A、安全性 B、多线性 C、跨平台 D、可移植 3、Java JDK中调试器的命令是(C)。 A、javac B、java C、jdb D、avah 4、运行jar文件中class文件需要在java命令后面加的参数为(A)。 A、-cp B-g C-d D-verbose 5、下面哪项在java中是不合法的标识符?(C) A、$user B、point C、You&me D、_endline 6、下面关于Java语言说法正确的是(ABCD)。 A、Java语言是面向对象的、解释执行的网络编程语言。 B、Java语言具有可移植性,是与平台无关的编程语言。 C、Java语言可对内存垃圾自动收集。 D、Java语言编写的程序虽然是“一次编译,到处运行”,但必须要有Java的运行环境。 7、在Java程序设计中,程序员创建()文件,然后编译器把它们转化为()文件。( B) A、源, HTML B、源, 字节代码 C、字节代码, 源 D、HTML, 字节代码 8、Java的JVM是指(B)。 A、由Java操作的家用设备(通常是一个漂亮的小烤箱) B、Java字节代码的解释程序 C、Java源代码的编译器 D、运行Java 所需的硬件设备 9、在Java中,关于CLASSPA TH环境变量的说法不正确的是(A)。 A、CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B、编译器用它来搜索各自的类文件。 C、CLASSPATH是一个目录列表。 D、解释器用它来搜索各自的类文件。 10、一个可以独立运行的Java应用程序(D)。

Java期末考试试卷答案A

JAVA程序设计试卷库(第5套) 一、单选题(每小题 2 分,共 20 分) 1、Java Application源程序的主类是指包含有( A )方法的类。 A. main方法 B. toString方法 C. init方法 D. actionPerfromed方法 2、分析下面的程序段,下面的哪个描述是正确的。( B ) char mychar=’c’; switch(mychar){ default: case ‘a’“a”);break; case ‘b’“b”);break; } A.switch语句块是错误的, 因为switch后面的表达式 值的类型不是整数; B.switch语句块是正确的; C.switch语句块是错误的, 因为default没有放在语 句块的最后面; D.代码运行时,没有任何输出 结果。 3、编译并运行下面的Java程序, 将产生( B )结果。 class A{ int var1=1; int var2; public static void main(String[] args){ int var3=3; A a=new A(); } } A. 0 B. 4 C. 3 D. 代码无法编译,因为var2根本 没有被初始化 4、在Java中,下面关于包的陈述 中正确的是( D )。

A. 包的声明必须是源文件的任意位置; B. 包的声明必须紧跟在import 语句的后面; C. 只有公共类才能放在包中; D. 可以将多个源文件中的类放在同一个包中 5、 在Java 语言中,当一个类的某个变量声明为protected 时下列说法正确的是( C )。 A. 只有同一类中的成员才能访问它; B. 不同包中的任何其他类都能够访问它; C. 同包中的任何其他类能够访问它; D. 不同包中的子类不可以访问该变量。 6、在Java 中,执行下面的语句后,c 的值为( D )。 String s= "Jessica "; char c=s.charAt(6); A. "c " B. "a " C. 'c ' D. 'a ' 7、设有下面两个赋值语句: a = Integer.parseInt(“1024”); b = Integer.valueOf(“1024”).int Value(); 下述说法正确的是( D )。 A .a 是整数类型变量,b 是整数类对象。 B .a 是整数类对象,b 是整数类型变量。 C .a 和b 都是整数类对象并且它们的值相等。 D .a 和b 都是整数类型变量并且它们的值相等。 8、事件剪裁类如WindowAdapter (它实现了WindowListener 接

java基础练习题

1) 以下关于Java语言说法错误的是()。(选择两项) a) Java语言是一种OO语言,Java API是Java语言的帮助文档 b) Java语言具有平台无关性-Write Once,Run Anywhere c) Java语言的核心是Java Virtual Machine d) 使用Java语言,程序员要使用原始方法分配和释放内存空间 e) Java语言是一种编译执行语言 知识点: 第一章Java语言基础Java语言基本概念 2) 以下哪一项不是Java的关键字(b)。(选择一项) a) if b) then c) goto d) case e) while 知识点: 第二章Java编程基础Java中的关键字 3) 下列(a,e)不是合法的Java语言标识符。(选择两项) a) 2variable b) variable2 c) _whatavariable d) $anothervar e) #myvar f) _3_ 知识点: 第二章Java编程基础Java中的标识符 4) 执行下列代码段后,变量x的值是(c)。(选择一项) x=9; y=9; x=(y<=x++)?1:0; a) 1 b) 2 c) 0 d) 10 知识点: 第二章Java编程基础三元运算符 5) System.out.println(4 | 7);上面语句的输出结果是(d)。(选择一项) a) 4 b) 5 c) 6 d) 7 e) 0 知识点: 第二章Java编程基础位运算符 6) 以下会产生编译错误的Java语句是(b)。(选择一项) a) if (2 == 3) System.out.println("Hi"); b) if (2 = 3) System.out.println("Hi");

java程序设计试题库

《Java语言程序设计基础教程》 练习思考题参考答案 第1章Java程序设计概述 1、1单项选择题 1.编译Java Application源文件将产生相应得字节码文件,扩展名就是什么 A、、java ???? B、、class ?C、、html??? D、、exe 解答:B 2.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中“一次编 译,随处运行”得特点. ?A、简单性????B、平台无关性 C、面向对象性???? D、安全性 解答:B 3.Java语言具有许多优点与特点,下列选项中,哪个反映了Java中并行机制得 特点。 ?A、多线程???B、平台无关性 C、面向对象性??? D、安全性 解答:A 4。在Java语言中,下列哪些语句关于内存回收得说明就是正确得? ?A.程序员必须创建一个线程来释放内存; B.内存回收程序负责释放无用内存; C.内存回收程序允许程序员直接释放内存; D.内存回收程序可以在指定得时间释放内存对象 解答:B 5.一个Java源文件中最多只能有多少个public类。 ?A、1个?B、2个

C、3个? D、任意多个 解答:A 6。下面哪一个不就是Java语言所具有得特点。 A、没有全局变量,在类得定义外部没有任何得变量定义; ?B、不直接支持指针操作,而使用更安全得引用类型; C、支持子类对父类得多继承; D、具有自动垃圾收集功能; 解答:C 7。下面哪一个不就是Java开发工具包JDK得组成部分. ?A、Java得编译器; B、Java得解释器;? ?C、Java得API继承类库; ?D、Eclipse开发工具; 解答:C 8。JDK提供得编译器就是()。 ?A、java、exe???B、javac、exe C、javap、exe??? D、javaw、exe 解答:B 9。作为Java应用程序入口得main方法,其声明格式可以就是() A、public voidmain(String[]args) B、public static void main(String []args) C、public static void Main(String* args) D、public int main(String []args) 解答:B 10.下列说法正确得就是( A ) A、JAVA程序得main方法必须写在类里面 B、JAVA程序中可以有多个main方法 C、JAVA程序中类名必须与文件名一样 D、JAVA程序得main方法中如果只有一条语句,可以不用{}(大括号)括起来 11。下列哪些语句关于Java内存回收得说明就是正确得? ( B) A、程序员必须创建一个线程来释放内存

JAVA期末考试考卷及答案

《J A V A语言程序设计》期末考试模拟试题 一、单选择题(每小题2分,共10分) 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展 名为( B )。 A. .java B. .class C. .html D. .exe 2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A )。 A. 3 B. 3. 5 C. 4 D. 5 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方 法来完成一些画图操作。 A. start( ) B. stop( ) C. init( ) D. paint( ) 4、不允许作为类及类成员的访问控制符的是( C )。 A. public B. private C. static D. protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为 前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题(每空格1分,共20分) 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。

MyApplet必须是 Applet 类的子类并且存储该源程序文件的文件名为MyApplet 。 3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译 器编译该源程序文件将产生 3 个文件名与类名相同而扩展名为 . class 的字节码文件。 4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用 2 字节内存空间,这样,无论是中文字符还是英文字符,都是占 用 2 字节内存空间。 5、设 x = 2 ,则表达式 ( x + + )/3 的值是 1 。 6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为 true 和 false 。 7、抽象(abstract)方法方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法方法是不能被当前类的子类重新定义的方法。 8、创建一个名为 MyPackage 的包的语句是 package MyPackag , 该语句应该放在程序的位置为:应该在程序第一句。 9、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 120 。 int s = 0 ; for ( int i = 0 ; i < ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; 10、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。

《Java编程基础知识点汇总及习题集》--答案

目录 第一章Java入门2? 第二章 Java基础5? 第三章条件转移1?4 第四章循环语句20? 第五章方法 ............................................... 26 第六章数组33? 第七章面向对象........................................... 42第八章异常63? ? 第一章Java入门 知识点汇总 1、JAVA 三大体系 ?Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个 平台中最核心的部分,包含Java最核 心的类库。?JavaEE:(J2EE,Java 2 Platform, EnterpriseEdition,企业版), 开发、装配、部署企业级应用,包含 Servlet、JSP、JavaBean、JDB C、EJB、Web Service等。 ?Java ME:(J2ME,Java 2 Platfor mMicro Edition,微型版),用于 小型电子设备上的软件开发。

2、JDK,JRE,JVM的作用及关系 作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 ?path环境变量:存放可执行文件的存 放路径,路径之间用逗号隔开 ?classpath环境变量:类的运行路径,J VM在运行时通过classpath加载需 要的类 4、重点掌握两个程序 ?javac.exe:Java编译器工具,可以将 编写好的Java文件(.java)编译成 Java字节码文件(.class); ?java.exe:Java运行工具,启动Java 虚拟机进程,运行编译器生成的字节 码文件(.class) 5、一切程序运行的入口 publicstatic voidmain(String args []){ System.out.println(“Hel lo World!”); } 课堂笔记 练习题 一、填空题 1、Java的三个技术平台分别是(J2SE )、(J2EE)、(J2ME)。 2、Sun公司针对领域不同,提供了三个Java版本,其中对于个人计算机程序开发的是( J2SE ), 对于企业开发应用的是(J2EE),对于嵌入式设备应用开发的是( J2ME )。 (classpath )。 3、建立Java开发环境,安装JDK,一般需要设置环境变量(path)、 4、编写一个Java源程序,其文件名为Test.java,则编译该源程序的命令为(javac ),运行 该程序的命令为( java),生成文档注释的命令为( javadoc)。 5、Java程序的运行环境简称之为( JRE)。

Java程序设计基础习题答案

Java程序设计基础课后习题参考答案 第2章 1、关于Java Application得入口方法main()得检验: main()方法得参数名就是否可以改变? main()方法得参数个数就是否可以改变? 该方法名就是否可以改变? 参考答案:(1)main()方法得参数名可以改变.(2)main()方法得参数个数不可以改变。(3)该方法名不可以改变。 2、当一个程序没有main()方法时,能编译吗?如果能编译,能运行吗? 参考答案:当一个程序没有main()方法就是,就是可以编译通过得,但就是不能给运行,因为找不到一个主函数入口。 3、下列语句能否编译通过? bytei =127; bytej = 128; longl1 = 999999; long l2= 9999999999; 参考答案:byte i 与long l1可以编译通过。而byte j 与longl2 超出自身数据类型范围,所以编译失败。 4、下列语句能否编译通过? float f1 =3、5; float f2 = 3.5f; 参考答案:java中浮点型得数据在不声明得情况下都就是double型得,如果要表示一个数据就是float型得,必须在数据后面加上“F”或“f”;因此,floatf1 无法编译通过。 5、验证int 与char,int与double等类型就是否可以相互转换。 参考答案:(1)char类型可以转换为int 类型得,但就是int类型无法转换为char类型得;(2)int 可以转换为double类型得,但就是double类型无法转换为int 类型得。 6、计算下列表达式,注意观察运算符优先级规则。若有表达式就是非法表达式,则指出不合法之处且进行解释。 (1)4+5 == 6*2 ?(2) (4=5)/6?? (3)9%2*7/3>17(4)(4+5)<=6/3 ? (5) 4+5%3!=7-2????(6)4+5/6〉=10%2 参考答案:表达式(2)为不合法表达式,只能将值赋值给一个变量,因此其中(4=5)将5赋值给4就是不合法得. 7、下列()就是合法得Java标识符。 (1)Counter1 ??(2)$index, (3) name-7 ??(4)_byte

java程序设计习题集

Java程序设计习题集 第一章Java基础知识 §1.1Java概述 1.完成在Windows 2000操作系统下环境变量的配置 2.创建一个Java程序,输出自己的基本信息:名字和年龄。 3.概述Java语言的版本发展过程。 4.简述Java语言的运行机制。 5.在自己的机器上用JDK开发运行环境完成第一个Java程序的编辑、编译、运行过程。 6.简述Java语言的特点,Java虚拟机的概念及作用。 §1.2 Java基本语法 1.什么是变量?什么是常量? 2.什么叫表达式,Java语言中共有几种表达式? 3.下面哪些表达式不合法?为什么? HelloWorld 2Thankyou _First -Month 893Hello non-problem HotJava implements $_MyFirst 4. 以下的选项中能正确表示Java语言中的一个整型常量的是( )。 A) 12. B) -20 C) 1,000 D) 4 5 6 5. 以下选项中,合法的赋值语句是( )。 A) a = = 1; B) ++ i; C) a=a + 1= 5; D) y = int ( i ); 6. 若所用变量都已正确定义,以下选项中,非法的表达式是( )。 A) a != 4||b==1 B) 'a' % 3 C) 'a' = 1/2 D) 'A' + 32 7. 若有定义int a = 2;则执行完语句a += a -= a * a; 后,a的值是( )。 A) 0 B) 4 C) 8 D) -4 8. 在Java语言中,逻辑常量只有true 和 ___________ 两个值。 9. Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float 和 __________两种具体类型。 10. Java语言是( )。 A.面向问题的解释型高级编程语言 B.面向机器的低级编程语言 C.面向过程的编译型高级编程语言 D.面向对象的解释型高级编程语言 11. 下列的变量定义中,错误的是( )。 A) int i; B) int i=Integer.MAX_VALUE; C) static int i=100; D) int 123_$; 12. 以下的变量定义语句中,合法的是( )。 A) float $_*5= 3.4F; B) byte b1= 15678; C) double a =Double. MAX_VALUE; D) int _abc_ = 3721L; 13. 以下字符常量中不合法的是( )。 A) '|' B) '\'' C) "\n" D) '我' 14. 若以下变量均已正确定义并赋值,下面符合Java语言语法的语句是( )。 A) b = a!=7 ; B) a = 7 + b + c=9; C) i=12.3* % 4; D) a = a + 7 = c + b;

Java编程基础知识点汇总及习题集答案

J a v a编程基础知识点汇总及习题集答案 集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-

目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (14) 第四章循环语句 (20) 第五章方法 (26) 第六章数组 (33) 第七章面向对象 (42) 第八章异常 (63) 第一章 Java入门 知识点汇总 1、JAVA 三大体系 Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心的部分,包含Java 最核心的类库。 JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装配、部署企业级应用,包含Servlet、JSP、JavaBean、JDBC、EJB、Web Service等。 Java ME:(J2ME,Java 2

Platform Micro Edition,微型版),用于小型电子设备上的软件开发。 2、JDK,JRE,JVM的作用及关系作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 path环境变量:存放可执行文件的存放路径,路径之间 用逗号隔开 classpath环境变量:类的运行路径,JVM在运行时通过classpath加载需要的类 4、重点掌握两个程序 :Java编译器工具,可以将编写好的Java文件(.java)编译成Java字节码文件(.class); :Java运行工具,启动Java虚拟机进程,运行编译器生成的字节码文件(.class) 5、一切程序运行的入口public static void main (String args []){ World!”); } 课堂笔记

《Java编程基础知识点汇总及习题集》--答案

目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (16) 第四章循环语句 (22) 第五章方法 (28) 第六章数组 (35) 第七章面向对象 (44) 第八章异常 (65)

第一章Java入门 知识点汇总 1、JAVA 三大体系 ?Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心 的部分,包含Java最核心的类库。 ?JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装 配、部署企业级应用,包含Servlet、JSP、 JavaBean、JDBC、EJB、Web Service等。 ?Java ME:(J2ME,Java 2 Platform Micro Edition,微型版),用于小型电子设备 上的软件开发。 2、JDK,JRE,JVM的作用及关系 作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 ?path环境变量:存放可执行文件的存 放路径,路径之间用逗号隔开 ?classpath环境变量:类的运行路径, JVM在运行时通过classpath加载需要 的类 4、重点掌握两个程序 ?javac.exe:Java编译器工具,可以将编 写好的Java文件(.java)编译成Java 字节码文件(.class); ?java.exe:Java运行工具,启动Java虚 拟机进程,运行编译器生成的字节码 文件(.class) 5、一切程序运行的入口 public static void main(String args []){ System.out.println(“Hello World!”); } 课堂笔记

相关主题