java练习题求解希望有完整代码

java练习题求解希望有完整代码,第1张

运行代码

具体的代码如下:

import javautilHashMap;

public class SearchDemo {

public HashMap<Integer,Integer> countMap(char[] arr){

HashMap countMap = new HashMap<Integer, Integer>();

for (int i = 0; i < arrlength; i++) {

if(!countMapcontainsKey(arr[i])){

countMapput(arr[i],1);

}else{

int value = (int)countMapget(arr[i]) + 1;

countMapput(arr[i],value);

}

}

return countMap;

}

public static void main(String[] args) {

char[] arr={'A','1','R','!','e','&','A','5','A','g','#','D'};

int count = new SearchDemo()countMap(arr)get('A');

Systemoutprintln("其中'A'字符的个数是:" + count);

}

}

运行结果

一、程序填空题

1下面是一个java应用程序(Application),它的功能是在屏幕上输出26个英文字母,其中每个字母相隔一个制表符,请完成程序。

public _____ Class1

{

public static void main( String args[] ) {

char c='a';

for (int i=1;i<=26;i++){

Systemoutprint(____________);

}

}

}

2下面程序的功能为计算数组各元素的和,请完成程序。

import javaawtGraphics;

import javaxswingJApplet;

public class SumOfArray _______ JApplet{

public void paint( Graphics g ) {

int a[] = { 1, 3, 5, 7, 9, 10 };

int total=0;

for ( int i = 0; i < alength; i++ )

total+=_____________;

gdrawString( "Total of array elements: " + total, 25, 25 );

}

}

3下面程序的功能是通过调用方法max()求给定的三个数的最大值,请将程序补充完

整。

import javaio;

public class Class1{

public static void main( String args[] ) {

int i1=1234,i2=456,i3=-987;

int MaxValue;

MaxValue=____________;

Systemoutprintln("三个数的最大值:"+MaxValue);

}

public ________ int max(int x,int y,int z) {

int temp1,max_value;

temp1=x>yx:y;

max_value=temp1>ztemp1:z;

return max_value;

}

}

二、简答题

1阅读下面的程序,回答以下问题(6分)问题:

import javaawt;

import javaxswing;

import javaawtevent;

public class Test extends JApplet implements ActionListener {

JLabel aa;

JTextField t1;

int i=0;

public void init(){

thissetLayout(new FlowLayout());

aa=new JLabel("请输入一个整数:");

add(aa);

t1=new JTextField(10);

add(t1);

t1addActionListener(this);

}

public void paint(Graphics g){

gdrawString("a="+( ++i--i),20,60);

gdrawString("i="+( i),20,80);

}

public void actionPerformed(ActionEvent e){

i=IntegerparseInt(t1getText());//转化为整数

repaint();

}

}

1)程序开头的 import javaawtevent ; 的含义是什么

2)ActionListener是类还是接口 程序中哪个方法是ActionListener中的方法,其功能为何

3)若在文本域中输入6并回车,程序输出什么

2阅读程序,回答以下问题(6分)

public class InheritTest1{

public static void main (String[] args){

A aa;

B bb;

aa=new A( );

bb=new B( );

aashow( );

bbshow();

}

}

public class A{ //Ajava

int a=1;

double d=20;

void show( ){

Systemoutprintln("Class A: "+"\ta="+a +"\td="+d);

}

}

public class B extends A{ //Bjava

float a=30f;

String d="Java program";

int b=4;

void show( ){

Systemoutprintln("Class A: "+"\ta="+supera +"\td="+superd);

supershow( );

Systemoutprintln("Class B: "+"\ta="+a +"\td="+d+"\tb="+b);

}

}

问题:

1) 这是哪一类java程序

2) 类A和类B是什么关系?

3) 按程序输出的格式写出程序运行后的结果

三、程序设计题

1 实现java应用程序实现的功能是从文本域中输入你的名字"",回车后在标签中显示",你好!" ,请完成程序。如图

这是答案:

一、程序填空题

1class "\t"+(char)(c+i-1)

2extends a[i]

3max(i1,i2) static

二、简答题

1 1)程序开头的 import javaawtevent ; 的含义是什么

加载javaawtevent包中的所有类。

2)ActionListener是类还是接口 程序中哪个方法是ActionListener中的方法,其功能为何

ActionListener是接口,actionPerformed是ActionListener中的方法,功能是当点击按钮时,将文本域的数据转化为整数。

3)若在文本域中输入6并回车,程序输出什么

A=42

I=6

2阅读程序,回答以下问题(6分)

}问题:

1) 这是哪一类java程序

Java Application

2) 类A和类B是什么关系?

A类是B类的父类

3) 按程序输出的格式写出程序运行后的结果

三、程序设计题

1 实现java应用程序实现的功能是从文本域中输入你的名字"",回车后在标签中显示",你好!" ,请完成程序。如图

import javaawt;

import javaxswing;

import javaawtevent;

public class Test extends JFrame implements ActionListener

{

JLabel aa,bb;

JTextField t1;

String s=" ";

public Test(){

aa=new JLabel("请输入你的名字:");

bb=new JLabel();

Container c=thisgetContentPane();

csetLayout(new FlowLayout());

t1=new JTextField(10);

cadd(aa);

cadd(t1);

cadd(bb);

t1addActionListener(this);

}

public void actionPerformed(ActionEvent e){

if(t1getText()!=null){

bbsetText(t1getText()+",你好!");

repaint();

}

}

public static void main(String[] args){

Test t=new Test();

tpack();

tshow();

}

}

我这还有 。。。如果还要的话 到我空间留言

Java面向对象程序设计

考试卷

班级:

姓名:

时间: 90分钟

一、选择题(没有注明多选,则为单选)

1、 下列变量定义错误的是 D

A int a;

B double b=45;

C boolean b=true;

D float f=98; (98f)

2、 6+5%3+2的值是 D 3%5=3

A 2

B 1

C 9

D 10

3、 对于一个三位的正整数 n,取出它的十位数字k(k为整型)的表达式是

A k = n / 10 % 10

B k = ( n - n / 100 100 )%10

C k = n % 10

D k = n / 10

4、 下列语句序列执行后,k 的值是 D

1 int x=6, y=10, k=5;

2 switch( x % y ) (=6) (long类型不行)

3 {

4 case 0: k=xy;

5 case 6: k=x/y;

6 case 12: k=x-y;

7 default: k=xy-x; (default 位置可以改变)

8 }

A 60

B 5

C 0

D 54

5、 下列语句序列执行后,i的值是:

1 int i = 10;

2 do { i/=2; } while( i-- > 1 ); (减去1)

A 1

B 5

C 2

D -1

6、 在某个类中存在一个方法:void getSort(int x),以下能作为这个方法的重载的声明的是:(同一个方法中参数不同,返回值类型可以不同也可以相同)

A public getSort(float x) 没有返回类型 一定是构造函数 不能重载

B int getSort(int y)(参数一样不是重载)

C double getSort(int x,int y) (参数不一样是重载)

D void get(int x, int y)

7、 下列哪个是合法的Java标识符:(两个答案) B C

A Tree&Glasses

B FirstJavaApplet

C _$theLastOne

D 2735

8、 设 a = 8,则表达式 a >>> 2 的值是:C (无符号右移动)左移是乘 右是除

A 1

E 2

B 3

C 4

9、 下面的程序名为Studentjava

1 public class Student

2 {

3 private String name;

4 public Student(String s_name) //1

5 {

6 name = s_name; //2

7 }

8 public static void main(String args[])

9 {

10 Student s = new Student(); //3

11 }

12 }

使用如下指令编译:javac Studentjava将会得到什么结果?

A 将会顺利通过编译,并将产生一个Studentclass的类文件

F 编译时在//3处出错

B 编译时在//2处出错

C 编译时在//1处出错

10、 下面选项中能把字符串转换成float类型的是?: B

A float value = new Float(str); 创建一个对象

B float value = FloatparseFloat(str);

C float value = FloatfloatValue(str);

D float value = (new Float())parseFloat(str);

11、 下边程序运行的结果是? 实例化子类对象要看父类

1class Base {

2 Base() { Systemoutprint("Base"); }

3 }

4 public class Alpha extends Base {

5 public static void main( String[] args ) {

6 new Alpha();

7 new Base();

8 }

9 }

A Base

B BaseBase

C 程序编译失败

D 程序运行但没有任何输出

12、 下面程序运行的结果是? A 值传递

1 public class X {

2 private static int a;

3 public static void main(String [] args) {

4 modify(a);

5 Systemoutprintln(a);

6 }

7 public static void modify(int a) {

8 a++;

9 }

10 }

A 0

B 1

C 程序编译失败

D 程序抛出异常

13、 下面程序运行的结果是?

1.String s = "Hello" + 9 + 1;+字符连接(9+1+”hello”=10hello(string类型))

2.Systemoutprintln(s);

A Hello10

B Hello91

C Hello100

D 程序编译失败

14、 下列说法正确的是? C

A 一个子类可以有多个父类,一个父类也可以有多个子类

B 一个子类可以有多个父类,但一个父类只可以有一个子类

C 一个子类可以有一个父类,但一个父类可以有多个子类

D 上述说法都不对

15、 下面程序运行的结果是?

1 abstract class AbstrctIt {

2 abstract float getFloat ();

3 }

4 public class AbstractTest extends AbstractIt {

5 private float f1= 10f;

6 private float getFloat () {return f1;} 权限只能扩大不能缩小

7 }

A 编译成功

B 在第6行产生一个运行时异常

C 在第6行产生一个编译错误

D 在第2行产生一个编译错误

16、 下面的程序输出的结果是:B

1 public class A implements B {

2 public static void main(String args[]){

3 int i;

4 A c1 = new A();

5 i= c1k;

6 Systemoutprintln("i="+i);

7 }

8 }

9 interface B {

10 int k = 10;接口(抽象方法和静态常量的结合)里的静态常量 public static final

11 }

A i=0

B i=10

C 程序有编译错误

D i=true

17、 方法methodA返回类型是:

1 public class returnIt{

2 returnType methodA(byte x, double y) {

3 return (short) x/y 2;

4 }

5 }

A int

B byte

C long

D double

18、 下面的程序输出的结果是:A

1 public class IfTest {

2 public static void main(string[]args) {

3 int x = 3;

4 int y = 1;

5 if (x = y) =:赋值运算符 (==)比较运算符

6 Systemoutprintln(“Not equal”);

7 else

8 Systemoutprintln(“Equal”);

9 }

10}

A Equal

B Not Equal

C 编译失败

D 程序没有任何输出结果

19、 在下面程序中,变量i可以使用的数据类型是:(两个答案) A B

1 switch (i) {

2 default:

3 Systemoutprintln(“Hello”);

4 }

A char

B byte

C float 不行

D double 不行

E object

20、 应用程序的main方法中有以下语句,则输出的结果是:A

1 int[] x={122,33,55,678,-987};

2 int y=x[0];

3 for(int i=1;i<xlength;i++){

4 if(x[i]>y)

5 y =x[i];

6 }

7 Systemoutprintln(y);

A 678

B 122

C -987

D 33

21、 程序输出的结果是?C

1 public class X {

2 public static void main(String [] args) {

3 try {

4 badMethod();

5 Systemoutprint(“A”);

6 }

7 catch (Exception ex) {

8 Systemoutprint(“B”);

9 }

10 finally {

11 Systemoutprint(“C”);

12 }

13 Systemoutprint(“D”);

14 }

15 public static void badMethod() {}

17 }

A AB

B BD

C ACD

D ABCD

22、 程序输出的结果是?D

Systemoutprintln(4 | 3);: 二进制 安位或

A 0

B 1

C 5

D 7

23、 关于下述程序哪个是正确的构造器重载(两个正确)

1 public class ConstOver {

2 public ConstOver (int x, int y, int z) {

3 }

4 }

A ConstOver ( ) { }

B protected int ConstOver ( ) { } 构造函数没有返回类型

C private ConstOver (int z, int y, byte x) { }

D public Object ConstOver (int x, int y, int z) { }

E public void ConstOver (byte x, byte y, byte z) { }

24、 下述程序编译运行后在//1和//2处分别打印出什么值?

1 public class Test9静态变量和静态块只会初始化一次

2 {

3 static int i = 1;

4 static

5 {

6 i++;

7 }

8 public Test9()

9 {

10 i++;

11 }

12 public static void main(String[] args)

13 {

14 Test9 t1 = new Test9();

15 Systemoutprintln(t1i); //1

16 Test9 t2 = new Test9();

17 Systemoutprintln(t2i); //2

18 }

19 }

A 2和2

B 3和3

C 3和4

D 4和3

25、 下列答案正确的是:两个答案 A B

int[] arr = new int[10];

A arr[0] 是null

B arr[10]是0

C arr[9] 是0

D arr[0] 是0

26、 编译器能够为类A分配一个默认构造器的是?(两个答案) A D

A class A {}

B class A {

public A() { }

}

C class A {

public A(int x) { }

}

D class Z { }

class A extends Z {

void A() { }

}

27、 下面程序运行的结果是:

1public class Foo {

2public int i = 3;

3 public static void main(String args[]) {

4 Object o = new Foo();

5 Foo foo = (Foo)o;

6 Systemoutprintln("i = " + fooi);

7 }

8}

A i=3

B i = 0

C 程序编译错误

D 程序运行时抛出异常

28、 下面程序运行的结果是:

1 class Exc0 extends Exception { }

2 class Exc1 extends Exc0 { }

3 public class Test {

4 public static void main(String args[]) {

5 try {

6 throw new Exc1();

7 } catch (Exc0 e0) {

8 Systemoutprintln("Ex0 caught");

9 } catch (Exception e) {

10 Systemoutprintln("exception caught");

11 }

12 }

13 }

A Ex0 caught

B exception caught

C 编译失败,错误在第2行

D 编译失败,错误在第6行

29、 下面表达式计算的结果和返回值类型分别是?(两个答案) B D

Mathceil(01 + Mathfloor(Mathrandom())); 0-1之间的小数

A 00

B 10

C float

D double

E 一个随机数

30、 下面程序运行的结果是:

1public interface Test {

2 int frood = 42;

3}

4class TestImpl implements Test {

5 private static int frood;

6 public static void main(String[] args) {

7 Systemoutprintln(++frood);

8 }

9}

A 0

B 1

C 42

D 43

答题卡

1 2 3 4 5

6 7 8 9 10

11 12 13 14 15

16 17 18 19 20

21 22 23 24 25

26 27 28 29 30

二、编程题

注意:书写清晰,看不清楚不给分,注意字体大小,写不下可以写在背面,标清题号。

1、 输出n行n列的空心矩形(要求使用嵌套循环),当n=5时,运行结果显示如下:

#####

# #

# #

# #

#####

2、 设计Java程序

假设有50瓶饮料,喝完3个空瓶可以换一瓶饮料,依次类推,请问总共喝了多少瓶饮料?

3、 设计Java程序,实现如下功能:

获取50个0至300之间的随机整数,并输出到屏幕上;

取出上面50个整数中的偶数,倒序排列输出到屏幕上。

4、 编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数wheels和车重weight。小车类Car是Vehicle的子类,其中包含的属性有载人数loader。卡车类Truck是Car类的子类,其中包含的属性有载重量payload。每个类都有构造方法和输出相关数据的方法。

这道题的答案是C。

double[] num1; //定义一个double类型的数组num1

double num3=20; //定义一个double类型的变量并赋值为20

int num2=5; //定义一个int类型的冰凉num2,并赋值为5

num1=new double[num2+1];

//给double类型的数组num1赋值,并初始化为5+1个大小, num2=5,所以是5+1

num1[num2]=num3;

//上面这句翻译过来就是:数组num1[5]=20 。 由于数组下标从0开始,所以下标为5的元素是最后一个元素。 所以答案是C

import javautilRandom;

import javautilScanner;

public class T {

public static void main(String[] args) throws Exception {

Scanner in = new Scanner(Systemin);

int difficulty;//难度

int mode;//运算类型

int answer;//答案

int amount;//挑战题目数量

int score = 0;//得分

Systemoutprintln("请输入难度(1:一位数、2:两位数、3:三位数):");

difficulty = innextInt();

Systemoutprintln("请输入运算类型(1:加、2:减、3:乘、4:除):");

mode = innextInt();

Systemoutprintln("请输入想要挑战的题目数量:");

amount = innextInt();

Random random = new Random();

for (int i = 0; i < amount; i++) {

if (difficulty == 1) {

if (mode == 1) {

int x = randomnextInt(10);

int y = randomnextInt(10);

Systemoutprintln("第" + i + "题:");

Systemoutprint(x + " + " + y + " = ");

answer = innextInt();

if (answer == (x + y)) {

Systemoutprintln("答对了\n");

score++;

} else {

Systemoutprintln("答错了,答案是:" + (x + y) + "\n");

}

} else if (mode == 2) {

int x = randomnextInt(10);

int y = randomnextInt(10);

Systemoutprintln("第" + i + "题:");

Systemoutprint(x + " - " + y + " = ");

answer = innextInt();

if (answer == (x - y)) {

Systemoutprintln("答对了\n");

score++;

} else {

Systemoutprintln("答错了,答案是:" + (x - y) + "\n");

}

} else if (mode == 3) {//乘法

} else if (mode == 4) {//除法 考虑小数的问题

} else {

throw new Exception("运算类型输入值不合法");

}

} else if (difficulty == 2) {

if (mode == 1) {

int x = randomnextInt(100);

int y = randomnextInt(100);

Systemoutprintln("第" + i + "题:");

Systemoutprint(x + " + " + y + " = ");

answer = innextInt();

if (answer == (x + y)) {

Systemoutprintln("答对了\n");

score++;

} else {

Systemoutprintln("答错了,答案是:" + (x + y) + "\n");

}

} else if (mode == 2) {

} else if (mode == 3) {//乘法

} else if (mode == 4) {//除法 考虑小数的问题

} else {

throw new Exception("运算类型输入值不合法");

}

} else if (difficulty == 3) {

if (mode == 1) {

int x = randomnextInt(1000);

int y = randomnextInt(1000);

Systemoutprintln("第" + i + "题:");

Systemoutprint(x + " + " + y + " = ");

answer = innextInt();

if (answer == (x + y)) {

Systemoutprintln("答对了\n");

score++;

} else {

Systemoutprintln("答错了,答案是:" + (x + y) + "\n");

}

} else if (mode == 2) {

} else if (mode == 3) {//乘法

} else if (mode == 4) {//除法 考虑小数的问题

} else {

throw new Exception("运算类型输入值不合法");

}

} else {

throw new Exception("难度输入值不合法");

}

}

Systemoutprintln("挑战结束,您的分数为:" + score);

}

}

我就只举了加法的例子,其他运算的写法都是类似的,你照葫芦画瓢即可

运行结果:

希望对你有用~~嘿嘿~~(我写的是控制台的程序,没用SWING做界面)

import javaio;

import javautilArrays;

import javautilScanner;

public class AbsenteeNote {

public static void main(String[] args) throws IOException {

int select = 0;

select = welcome();

if (select == 1 || select == 2) {

writeLetter(select);

} else {

viewLetter();

}

}

private static int welcome() {

int num = 0;//用于第一层菜单的选择

int num1 = 0;//用于第二层菜单的选择

do {

Systemoutprintln("1:编写请假条");

Systemoutprintln("2:查看请假条");

Systemoutprint("请选择功能号:");

Scanner in = new Scanner(Systemin);

num = innextInt();

} while (num != 1 && num != 2);//若输出的数字不为1或2,则继续选择

if (num == 1) {

do {

Systemoutprintln("1:病假");

Systemoutprintln("2:事假");

Systemoutprint("请选择功能号:");

Scanner in = new Scanner(Systemin);

num1 = innextInt();

} while (num1 != 1 && num1 != 2);

return num1;

} else {//当输入的是2(查看请假条),则任意返回一个值。

return 0;

}

}

private static void viewLetter() {//查看请假条

File letter = new File("c:\\Letter\\Lettertxt");

try {

FileInputStream view = new FileInputStream(letter);

byte b[] = new byte[viewavailable()];

while (viewread(b) != -1) {

FilterOutputStream viewContain=new FilterOutputStream(Systemout);

Systemoutprintln("假条内容如下:");

viewContainwrite(b);

viewContainclose();

}

viewclose();

} catch (FileNotFoundException e) {

Systemoutprintln("文件不存在!!!");

eprintStackTrace();

} catch (IOException e) {

eprintStackTrace();

}

}

private static void writeLetter(int num1) {//写请假条

String str = new String();

if (num1 == 1)

str = "我因发烧,请假一天 ";

else

str = "参加婚礼,于410请假一天";

File letter = new File("c:\\Letter\\Lettertxt");

StringBuilder contain = new StringBuilder();

Scanner in = new Scanner(Systemin);

Systemoutprint("寄信人地址:");

containappend("寄信人地址:" + innextLine() + "\r\n");

Systemoutprint("收件人地址:");

containappend("收件人地址:" + innextLine() + "\r\n");

Systemoutprint("签名:");

containappend("签名:" + innextLine() + "\r\n");

Systemoutprint("日期:");

containappend("日期:" + innextLine() + "\r\n");

containappend(str);

byte[] input = containtoString()getBytes();

try {

FileOutputStream out = new FileOutputStream(letter);

outwrite(input, 0, inputlength);

Systemoutprintln("请假条生成成功!!!");

outclose();

} catch (FileNotFoundException e) {

Systemoutprintln("文件不存在!!!");

eprintStackTrace();

} catch (IOException e) {

eprintStackTrace();

}

}

}

注意:还不是完整的文档,太长了不能全帖完。要的话找我!^_^

《Java程序设计》练习题

一、判断题

1、 Java语言采用面向对象的思想编程,具有跨平台、分布式、多线程等优点。 ( )

2、 一个Java源程序可有多个类,但只仅有一个public类,而且程序名与public类名相同。 ( )

3、方法中的形参可以和方法所属类的属性同名。 ( )

4、接口无构造器,不能有实例,也不能定义常量。 ( )

5、利用File对象可以判断一个文件或目录是否存在。 ( )

6、JFrame,JPanel,JApplet和JButton四种组件都属于容器组件。 ( )

7、BorderLayout是面板的缺省布局管理器。 ( )

8、BorderLayout最多可以使用5个组件。 ( )

9、一个面板(JPanel)不能被加入另一个面板(JPanel)中。 ( )

10、菜单需要一个JMenuBar对象,以使他们能被添加到JFrame。 ( )

11、线程可以用yield使同优先级的线程运行。 ( )

12、Systemin是标准输入流,能用read方法读取键盘的输入。 ( )

13、数据流就是数据通信通道,指在计算机的输入输出之间运动的数据序列。( )

二、填空题

1、设x,y,z的值分别为ture、false和false,试计算下列逻辑表达式的值:

(1) x &&y||!z&&ture (2) !x||!y&&!z

(3) (!x&&!y)||(!y&&!z) (4) x&&y||true&&!z

2、求下面表达式的值:

(1) 已知x=2、y=6、z=50,求x+(int)y/2z%4

(2) 已知x=123,求x/100+x%100/10+x%10

(3) 已知x=160、y=28、z=5,求(byte)x +(int)y+(float)z;

(4) 设 int x=17,y=5; 执行语句 x%=x++/--y 后x的值为 。

(5) 设 int a=7,b=6,c=5;,表达式 (a+b)>(cc)&&b==c||c>b 的值为 。

(6) 设 int a=3,b=5,c=7;,表达式a>c||c>b!=0&&c==b+a 的值为 。

3、下列表达式中n和x被赋值为多少?

int n=0;

int x=1;

n=x++ + x++; //这里n= , x=

n=n++ - x--; //这里n= , x=

n=x-- + -x++; //这里n= , x=

n=++x + x++; //这里n= , x=

4、使用 方法为组件设置布局管理器,JFrame的缺省布局管理器是 ,内容面板的缺省布局管理器是 。

5、写出4个常见的异常例子: 、 、 和 。重新抛出一个异常用 语句。

6、线程通过 方法可以休眠一段时间,然后恢复运行,当 时,线程进入死亡状态。

7、编写一个线程可以用 和 来实现。

8、创建文件(c:\testtxt)对象的语句是 ,DataInputStream对象提供 方法可以按行读取文件内容。

9、Container 的________方法可以将_______组件加入容器。

10、在执行Java线程的程序中,程序通过调用_______方法启动线程,随后又调用________方法。

11、使用 方法为组件设置布局管理器,JFrame的缺省布局管理器是 ,内容面板的缺省布局管理器是 。

12、JavaswingJFramegetContentPane()的返回类型是 。

13、数据越界抛出的异常类是 ,整数除零抛出的异常类是 ,算术溢出抛出的异常类是 。

三、选择题

1、 下面哪些是不合法的变量名称? ( )

A) 2D B) True C) _name D) T1 E) while-ture

2、下列变量定义不正确的是: ( )

A) boolean status=false; B) float d = 456;

C) char c = “a”; D) int k = 1+’1’; E) float f=1/4;

3、下列数组的定义不合法的是: ( )

A) char c[][]=new char[2][3];

B) char c[][]=new char[6][];

C) char [][]c=new char[3][3];

D) char [][]c=new char[][4];

E) int []a[] = new int[10][10];

4、对于下列代码:

public class Example{

String str=new String("hello");

char ch[]={'d','b','c'};

public static void main(String args[]){

Example ex=new Example();

exchange(exstr,exch);

Systemoutprintln(exstr+"and"+exch[0]);

}

public void change(String str,char ch[]){

str="world";ch[0]= 'a';

}

}

输出结果是: ( )

A) hello and d B) hello and a

C) world and d D) world and a

5、下列说法哪个是正确的? ( )

A) 子类不能定义和父类同名同参数的方法

B) 子类只能继承父类的方法,而不能重载

C) 重载就是一个类中有多个同名但有不同形参和方法体的方法

D) 子类只能覆盖父类的方法,而不能重载

6、如果一个程序段中有多个catch,则程序会按如下哪种情况执行? ( )

A) 找到合适的例外类型后继续执行后面的catch

B) 找到每个符合条件的catch都执行一次

C) 找到合适的例外类型后就不再执行后面的catch

D) 对每个catch都执行一次

7、以下哪一项不是File类的功能: ( )

A) 创建文件

B) 创建目录

C) 删除文件

D) 拷贝文件

8、下列说法哪个是正确的? ( )

A) BorderLayout是面板的缺省布局管理器

B) 当鼠标指针位于一个GUI组件的边上时,发生一个MouseOver事件

C) 一个面板(Jpanel) 不能被加入到另一个面板(Jpanel)中

D) 在BorderLayout中,添加到NORTH区的两个按钮将并排显示。

9、在java程序中,下列关于线程的说法错误的是: ( )

A) run方法是运行线程的主体

B) 多个进程运行时执行顺序是按顺序执行的

C) 如果线程死亡,它便不能运行

D) 在java中,高优先级的可运行线程会抢占低优先级线程

10、关于JDBC访问数据库的说法错误的是: ( )

A) 建立数据库连接时,必须加载驱动程序,可采用ClassforName()实现

B) 用于建立与某个数据源的连接可采用DriverManager类的getConnection方法

C) 建立数据库连接时,必须要进行异常处理

D) JDBC中查询语句的执行方法必须采用Statement类实现

四、程序阅读题

1、阅读下面的程序,程序保存为Testjava:

1) public class Test

2) {

3) public static void main(String[] args)

4) {

5) Systemoutprintln(args[2]);

6) }

7) }

以上程序经编译后用java Test 1 2 3 运行得到的输出结果是什么?

2、阅读下面的程序:

① public class Test{

② public static void main(String[] a){

③ int i = IntegerparseInt(a[0]);

④ switch (i) {

⑤ case 1:Systemoutprintln("Frist season");break;

⑥ case 2:Systemoutprintln("Second season");

⑦ case 3:Systemoutprintln("3th season");break;

⑧ case 4:Systemoutprintln("Last season");

⑨ }

⑩ }

⑪ }

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,用java Test 2 运行得到的输出结果是什么?

3、阅读下面的程序:

① public class Test{

② public static void main(String[ ] args) {

③ int x,y=2,i=0,j=0;

④ if(argslength<2) Systemexit(-1);

⑤ x = IntegerparseInt(args[1]);

⑥ switch(x){

⑦ case 1:switch(y){

⑧ case 1:i++;break;

⑨ case 2:j++;break;

⑩ default:i++;j++;

⑪ }

⑫ case 2:i++;j++;break;

⑬ default:i++;j++;

⑭ }

⑮ Systemoutprintln("i="+i);

⑯ Systemoutprintln("j="+j);

⑰ }

⑱ }

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,用java Test 1 2 3 运行得到的运行结果是什么?

4、阅读下面的程序,程序保存为Testjava:

1) public class Test

2) {

3) short mValue;

4) public static void main(String[] args)

5) {

6) int a = 32;

7) int b = 56;

8) Test os = new Test(a+b);

9) osShow( );

10) }

11) protected Test(short aValue) { mValue = aValue; }

12) public void Show( ) { Systemoutprintln(mValue); }

13) }

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么?

5、阅读下面的程序:

class test

{

public static void main(String[] args)

{

int i = 1;

int All = 0;

for (;i<=10;i++)

{

if (i%6==0) break;

if(i%2==0) {i=i+2;continue;}

All = All + i;

}

Systemoutprintln(All);

}

}

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么?

6、阅读下面的程序,程序保存为Testjava:

1) public class Test

2) {

3) public static void main(String[] args)

4) {

5) int i = 100;

6) int j = 0;

7) boolean b = true;

8) while (b)

9) {

10) if (b||(i<50)) b = false;

11) else b = true;

12) j=j+1;

13) i=i-1;

14) }

15) Systemoutprintln(j);

16) }

17) }

上面的程序经编译,运行后输出的结果是什么?

7、阅读下面的程序:

1) public class test

2) {

3) public static void main(String argv[])

4) {

5) Bird b = new Bird();

6) bFly(3);

7) }

8) }

9) class Bird

10) {

11) static int Type = 2;

12) private void Fly(int an_Type)

13) {

14) Type = an_Type;

15) Systemoutprintln("Flying"+Type);

16) }

17) }

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么?

8、阅读下面的程序:

1) abstract class Base{

2) abstract public void myfunc();

3) public void another(){

4) Systemoutprintln("Another method");

5) }

6) }

7) public class Abs extends Base{

8) public static void main(String argv[]){

9) Base b = new Abs();

10) banother();

11) }

12) public void myfunc(){

13) Systemoutprintln("My Func");

14) }

15) public void another(){

16) myfunc();

17) }

18) }

以上程序经编译后,运行结果是什么?

9、阅读下面的程序:

1) class Super{

2) public int i=0;

3) public Super(){

4) i=1;

5) }

6) }

7) public class Sub extends Super{

8) public Sub(){

9) i=2;

10) }

11) public static void main(String args[]){

12) Sub s=new Sub();

13) Systemoutprintln(si);

14) }

15) }

上面的程序经编译后,运行结果是什么?

10、阅读下面的程序,程序保存为Testjava:

1) public class Test {

2) public static void main(String[ ] args) {

3) int index=0;

4) while (index<=100) {

5) index+=10;

6) if (index==40)

7) break;

8) Systemoutprintln("The index is "+index);

9) }

10) }

11) }

上面的程序经编译,运行后输出的结果是什么?

五、问答题

1、 设int类型变量x和y分别初始化为3和100,下列语句的循环体共执行几次?执行完下列语句后x和y的值分别是多少?

(1) while(x<=y) x=2x;

(2) while(y/x>5) if(y-x>25) x=x+1; else y=y/x;

(3) do{x=2x;} while(x<y);

(4) do{x=y/x;y=y-x;}while(x>=y);

(5) do{y=y/x-1; if(y>=x) y=x;} while(y>=1);

2、简述对象、类的概念。

3、简述封装、继承性和多态性的概念。

4、根据以下的设计要求编写java源代码。

类名: Circle

实例数据(均为private):

radius(double) //圆的半径

方法:

构造方法(没有参数,设置radius的值为100)

setRadius(有一个double参数,将radius的值设为这个新值),

getRadius (没有参数,返回radius的值)

sameSize(有一个参数,是另一个Circle对象的引用,如果两个Circle对象的radius的差小于0001,则返回true)

5、下面的代码使用上题的Circle类,请回答下面的问题:

public class CircleTester {

public static void main(String[] args) {

Circle c1,c2,c3;

c1 = new Circle();

c2 = new Circle();

Systemoutprintln(“are same is: “+c1sameSize(c2));

c2setRadius(200);

comparereset();

Systemoutprintln(“are same is: “+c1sameSize(c2));

}

}

问题:

(1) 共创建了几个Circle对象

(2) 程序运行的结果是什么

6、假设已有一个ArrayMethods 类,包含以下的方法:

public static void replace(double[] a, int p, double v)

将数组a中下标为p的元素的值替换为v

public static void fill(double[] a, int p, double v)

将数组a中的前p个元素用value值填充(即将数组a的前p个元素的值,设成v),如果数组的长度小于p,则全部元素都设成v

public static void display(double[] a)

在屏幕上显示数组a的内容

现在假设你在main()方法中已经声明了如下变量:

double[] array1={45, 60, 01, 22};

double[] array2;

double num1;

int pos=3;

要求对下面的3组语句,先回答是否合法(即没有编译错误),如果是合法的,请描述程序运行的效果,如果不合法,请说明理由

1) num1 = array1[2];

ArrayMethodsreplace(array1, pos, num1);

ArrayMethodsdisplay(array1);

2) num1 = array1[0];

ArrayMethodsfill(array1, pos, num1);

ArrayMethodsdisplay(array1);

3) num1 = array1[1];

array2=new double[num1];

ArrayMethodsdisplay(array2);

六、编程题

1、分别利用for、while、do~while编写计算正整数n1到n2的累加和。

2、编写一个编程,给定一个t的值(t的值也可通过命令行输入),按下式计算y值并输出,要求分别写作if语句和switch语句。

t2-1 0≤t<1

t3-2•t-2 1≤t<3

y= t2-t•sint 3≤t<5

t+1 5≤t<7

t-1 其它

3、设计一个类TestArraySum,定义一个含有10个元素的int类型数组a,10个数组元素的值是11~20,再定义一个方法arraySum(int[] a),返回数组所有元素的和,最后用main方法实现在屏幕上输出数组a所有元素的和。

4、编写一个java程序Suansujava,定义两个整型变量a和b,使用构造函数初始化a为10,b为5,并定义求出a与b的和(方法名为AddAB)、差(方法名为SubAB)、积(方法名为MultiAB)、商 (方法名为DivAB)的方法。

用另一个java程序TestSuansujava测试Suansujava定义的方法,并在屏幕上输出结果。

5、创建一个名为Rectangle的类来表示一个使用宽度和高度来改变量的矩形,矩形的宽度和高度由构造方法来确定。为Rectangle类创建下列方法:

 getArea返回矩形的面积,要求长和高的范围为0~50;

 getPerimeter返回矩形的周长;

 Draw使用星号()作为描绘字符画出该矩形(假设宽度和高度为整数);

在另一个类TestRectangle中编写main方法来测试Rectangle类。

6、用面向对象的思想定义一个接口Area,其中包含一个计算面积的方法CalsulateArea(),然后设计MyCircle和MyRectangle两个类都实现这个接口中的方法CalsulateArea(),分别计算圆和矩形的面积,最后写出测试以上类和方法的程序。

7、创建一个Frame,有两个Button按钮和一个TextField,点击按钮,在TextField上显示Button信息。

8、创建下图的GUI程序(注意:不需要提供任何功能)。

9、编写一个文件拷贝的程序,将文件C:\test1txt的内容拷贝到C:\test2txt中。

10、编写一个程序,统计给定文件中每个字母出现的频率。

11、编写一个程序,统计给定文件中包含的单词数目,并按单词表的顺序显示统计结果。

12、用图形界面设计一个简单的计算器。

13、用图形界面实现简单的银行柜台业务,包含创建新帐户、取款、存款、查询帐户余额等业务。

以上就是关于java练习题求解希望有完整代码全部的内容,包括:java练习题求解希望有完整代码、求JAVA练习题几他的答案、哪儿有java练习题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9279908.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存