当前位置:文档之家› java2实用教程(第3版例子代码)

java2实用教程(第3版例子代码)

java2实用教程(第3版例子代码)
java2实用教程(第3版例子代码)

运算符、表达式和语句

例子1

class Example3_1

{ public static void main(String args[])

{ char a1='十',a2='点',a3='进',a4='攻';

char secret='8';

a1=(char)(a1^secret);

a2=(char)(a2^secret);

a3=(char)(a3^secret);

a4=(char)(a4^secret);

System.out.println("密文:"+a1+a2+a3+a4);

a1=(char)(a1^secret);

a2=(char)(a2^secret);

a3=(char)(a3^secret);

a4=(char)(a4^secret);

System.out.println("原文:"+a1+a2+a3+a4);

}

}

例子2

class Example3_2

{ public static void main(String args[])

{ int x,y=10;

if(((x=0)==0)||((y=20)==20))

{ System.out.println("现在y的值是:"+y);

}

int a,b=10;

if(((a=0)==0)|((b=20)==20))

{ System.out.println("现在b的值是:"+b);

}

}

}

例子3

public class Example3_3

{ public static void main(String args[]) { int a=9,b=5,c=7,t;

if(a>b)

{ t=a; a=b; b=t;

}

if(a>c)

{ t=a; a=c; c=t;

}

if(b>c)

{ t=b; b=c; c=t;

}

System.out.println("a="+a+",b="+b+",c="+c);

}

}

例子4

public class Example3_4

{ public static void main(String args[]) { int math=65 ,english=85;

if(math>60)

{ System.out.println("数学及格了");

}

else

{ System.out.println("数学不及格");

}

if(english>90)

{ System.out.println("英语是优");

}

else

{ System.out.println("英语不是优");

}

System.out.println("我在学习控制语句");

}

}

例子5

public class Example3_5

{ public static void main(String args[]) { int x=2,y=1;

switch(x+y)

{ case 1 :

System.out.println(x+y);

break;

case 3:

System.out.println(x+y);

case 0:

System.out.println(x+y);

break;

default: System.out.println("没有般配的"+(x+y));

}

}

}

例子6

public class Example3_6

{ public static void main(String args[])

{ long sum=0,a=5,item=a,n=10,i=1;

for(i=1;i<=n;i++)

{ sum=sum+item;

item=item*10+a;

}

System.out.println(sum);

}

}

例子7

class Example3_7

{ public static void main(String args[])

{ double sum=0,a=1;

int i=1;

while(i<=20)

{ sum=sum+a;

i=i+1;

a=a*(1.0/i);

}

System.out.println("sum="+sum);

}

}

例子8

class Example3_8

{ public static void main(String args[])

{ int sum=0,i,j;

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

{ if(i%2==0) //计算1+3+5+7+9

continue;

sum=sum+i;

}

System.out.println("sum="+sum);

for(j=2;j<=50;j++) //求50以内的素数

{ for( i=2;i<=j/2;i++)

{ if(j%i==0)

break;

}

if(i>j/2)

{ System.out.println(""+j+"是素数"); }

}

}

}

类、对象和接口

例子1

class XiyoujiRenwu

{ float height,weight;

String head, ear,hand,foot, mouth;

void speak(String s)

{ System.out.println(s);

}

}

class A

{ public static void main(String args[])

{ XiyoujiRenwu zhubajie; //声明对象

zhubajie=new XiyoujiRenwu(); //为对象分配内存,使用new 运算符和默认的构造方法 }

}

例子2

class Point

{ int x,y;

Point(int a,int b)

{ x=a;

y=b;

}

}

public class A

{ public static void main(String args[])

{ Point p1,p2; //声明对象p1和p2

p1=new Point(10,10); //为对象分配内存,使用 new 和类中的构造方法

p2=new Point(23,35); //为对象分配内存,使用 new 和类中的构造方法}

}

例子3

class XiyoujiRenwu

{ float height,weight;

String head, ear,hand,foot,mouth;

void speak(String s)

{ head="歪着头";

System.out.println(s);

}

}

class Example4_3

{ public static void main(String args[])

{ XiyoujiRenwu zhubajie,sunwukong;//声明对象

zhubajie=new XiyoujiRenwu(); //为对象分配内存

sunwukong=new XiyoujiRenwu();

zhubajie.height=1.80f; //对象给自己的变量赋值

zhubajie.head="大头";

zhubajie.ear="一双大耳朵";

sunwukong.height=1.62f; //对象给自己的变量赋值

sunwukong.weight=1000f;

sunwukong.head="绣发飘飘";

System.out.println("zhubajie的身高:"+zhubajie.height);

System.out.println("zhubajie的头:"+zhubajie.head);

System.out.println("sunwukong的重量:"+sunwukong.weight);

System.out.println("sunwukong的头:"+sunwukong.head);

zhubajie.speak("俺老猪我想娶媳妇"); //对象调用方法

System.out.println("zhubajie现在的头:"+zhubajie.head);

sunwukong.speak("老孙我重1000斤,我想骗八戒背我"); //对象调用方法 System.out.println("sunwukong现在的头:"+sunwukong.head);

}

}

例子4

class 梯形

{ float 上底,下底,高,面积;

梯形(float x,float y,float h)

{ 上底=x;

下底=y;

高=h;

}

float 计算面积()

{ 面积=(上底+下底)*高/2.0f;

return 面积;

}

void 修改高(float height)

{ 高=height;

}

float 获取高()

{ return 高;

}

}

public class Example4_4

{ public static void main(String args[])

{ 梯形 laderOne=new 梯形(12.0f,3.5f,50),laderTwo=new 梯形(2.67f,3.0f,10);

System.out.println("laderOne的高是:"+laderOne.获取高());

System.out.println("laderTwo的高是:"+laderTwo.获取高());

System.out.println("laderOne的面积是:"+laderOne.计算面积());

System.out.println("laderTwo的面积是:"+laderTwo.计算面积());

laderOne.修改高(10);

float h=laderOne.获取高();

laderTwo.修改高(h*2);

System.out.println("laderOne现在的高是:"+laderOne.获取高());

System.out.println("laderTwo现在的高是:"+laderTwo.获取高());

System.out.println("laderOne现在的面积是:"+laderOne.计算面积());

System.out.println("laderTwo现在的面积是:"+laderTwo.计算面积());

}

}

例子5

class People

{ String face;

void setFace(String s)

{ face=s;

}

}

class A

{ void f(int x,double y,People p)

{ x=x+1;

y=y+1;

p.setFace("笑脸");

System.out.println("参数x和y的值分别是:"+x+","+y);

System.out.println("参数对象p的face是:"+p.face);

}

}

public class Example4_5

{ public static void main(String args[])

{ int x=100;

double y=100.88;

People zhang=new People();

zhang.setFace("很严肃的样子");

A a=new A();

a.f(x,y,zhang);

System.out.println("main方法中x和y的值仍然分别是:"+x+","+y);

System.out.println("main方法中对象zhang的face是:"+zhang.face);

}

}

例子6

class 圆

{ double 半径;

圆(double r)

{ 半径=r;

}

double 计算面积()

{ return 3.14*半径*半径;

}

void 修改半径(double 新半径)

{ 半径=新半径;

}

double 获取半径()

{ return 半径;

}

}

class 圆锥

{ 圆底圆;

double 高;

圆锥(圆 circle,double h)

{ this.底圆=circle;

this.高=h;

}

double 计算体积()

{ double volume;

volume=底圆.计算面积()*高/3.0;

return volume;

}

void 修改底圆半径(double r)

{ 底圆.修改半径(r);

}

double 获取底圆半径()

{ return 底圆.获取半径();

}

}

class Example4_6

{ public static void main(String args[])

{ 圆 circle=new 圆(10);

圆锥 circular=new 圆锥(circle,20);

System.out.println("圆锥底圆半径:"+circular.获取底圆半径());

System.out.println("圆锥的体积:"+circular.计算体积());

circular.修改底圆半径(100);

System.out.println("圆锥底圆半径:"+circular.获取底圆半径());

System.out.println("圆锥的体积:"+circular.计算体积());

}

}

例子7

class 梯形

{ float 上底,高;

static float 下底;

梯形(float x,float y,float h)

{ 上底=x; 下底=y; 高=h;

}

float 获取下底()

{ return 下底;

}

void 修改下底(float b)

{ 下底=b;

}

}

class Example4_7

{ public static void main(String args[])

{ 梯形 laderOne=new 梯形(3.0f,10.0f,20),laderTwo=new 梯形(2.0f,3.0f,10);

梯形.下底=200; //通过类名操作类变量

System.out.println("laderOne的下底:"+laderOne.获取下底());

System.out.println("laderTwo的下底:"+laderTwo.获取下底());

laderTwo.修改下底(60); //通过对象操作类变量

System.out.println("laderOne的下底:"+laderOne.获取下底());

System.out.println("laderTwo的下底:"+laderTwo.获取下底());

}

}

Java2实用教程(第5版)习题解答(活动za)

习题解答 习题(第章) 一、问答题 . .需个步骤: 1)用文本编辑器编写源文件。 2)使用编译源文件,得到字节码文件。 3)使用解释器运行程序。 .源文件由若干个类所构成。对于应用程序,必须有一个类含有( [])的方法,含有该方法的类称为应用程序的主类。不一定,但至多有一个类。 .:\\\\;.; .和 . .独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题 .。.。 三、阅读程序 .()。()两个字节码,分别是和。()得到“”,得到“: ”,得到“您好,很高兴认识您”习题(第章) 一、问答题 .用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。不是标识符。.关键字就是语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。和不是关键字。个关键字:。 .,,,,,,,。 .常量必须用或为后缀。常量用或为后缀,但允许省略后缀。 .一维数组名。二维数组名。 二、选择题 .。.。.。.。.【代码】【代码】【代码】【代码】。.。 三、阅读或调试程序 .属于操作题,解答略。

.属于操作题,解答略。.属于操作题,解答略。.【代码】:。【代码】:[]。.【代码】:。【代码】:四、编写程序 . { ( []) { (()'你'); (()'我'); (()'他'); } } . { ( [ ]) { 'α''ω'; ( <) (" "); } } 习题(第章) 一、问答题 . .不可以 . . 不是必须的 .结束语句的执行 .可以 二、选择题 .。.。.。 三、阅读程序 .你,苹,甜 .好好 . 四、编程序题 .{

Java-异常(习题)

java异常(习题) 练习 1. 填空 Java 中所有的错误都继承自______类;在该类的子类中, _______类表示严重的底层错误,对于这类错误一般处理的方式是___________; _______类表示例外、异常。 2. 查api,填空 异常类java.rmi.AlreadyBoundException,从分类上说,该类属于__________(已检查| 未检查)异常,从处理方式上说,对这种异常___________________; 异常类java.util.regex.PatternSyntaxException,从分类上说,该类属于_________(已检查|未检查)异常,从处理方式上说,对这种异常__________________。 4. (try-catch-finally)有如下代码:

问:当读入的n 分别为1,2,3,4,5 时,输出的结果分别是什么?

5. (自定义异常)创建两个自定义异常类MyException1 和MyException2。 要求: 1) MyException1 为已检查异常,MyException2 为未检查异常 2) 这两个异常均具有两个构造函数,一个无参,另一个带字符串参数,参数表示产生异常的详细信息。

问: 在//1 处,填入以下________代码可以编译通过,在//2 处,填入_________代码可以编译通过。 A. throws java.io.IOException B. throws java.io., java.io.EOFException C. throws java.sql.SQLException D. 不能抛出任何异常。

Java2实用教程试题

课程代码:座位号: 新疆大学期末考试 《Java2实用教程》试卷 姓名:王多强 学号:20102006014专业:机械工程及自动化 第一部分选择题(共12分) 一、单项选择题(本大题共4小题,每题只有一个正确答案,答对一题得3分,共12分) 1、下面的代码段中,执行之后i 和j 的值是什么?【C 】 inti=1; intj; j=i++; A 、1,1 B 、1,2 C 、2,1 D 、2,2 2、已知如下的命令执行javaMyTestabc 【C 】 请问哪个语句是正确的? A 、args[0]="MyTestabc" B 、args[0]="MyTest" C 、args[0]="a"

D、args[2]='b' 3、以下哪个方法用于定义线程的执行体?【B】 A、start() B、init() C、run() D、main() 4、下面哪个函数是publicvoidexample(){...}的重载函数【A】 A、publicvoidexample(intm){...} B、publicintexample1(){...} C、publicvoidexample2(){...} D、以上都不对 第二部分非选择题(共88分) 二、名词解释(本大题3小题,每题4分,共12分。) 1、方法重载 答:方法重载就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不同个数和类型的参数来决定具体使用哪个方法。 2、构造方法 答:在Java中,任何变量在被使用前都必须先设置初值.Java提供了为类的成员变量赋初值的专门方法即构造方法,它是一种特殊的成员方法。 3、多态 答:多态就是一个方法名可以通过不同参数(参数名,参数个数)来重复使用,表示不同的意思,即一个名字多种功能用法,分为通用的多态和特定的多态两种。

Java2实用教程(第5版)最新答案-耿祥义

Java2(第5版)最新答案耿祥义 第1章 一、问答题 1.James Gosling 2.需3个步骤: 1)用文本编辑器编写源文件。 2)使用javac编译源文件,得到字节码文件。 3)使用解释器运行程序。 3.由类所构成,应用程序必须有一个类含有public static void main(String args[])方法,含有该方法的类称为应用程序的主类。不一定,但最多有一个public类。 4.set classpath=D:\jdk\jre\lib\rt.jar;.; 5.java和class 6. java Bird 7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行) 二、选择题 1.B。2.D。 三、阅读程序 1.(a)Person.java。(b)两个字节码,分别是Person.class和Xiti.class。(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很高兴认识您nice to meet you” 第2章 一、问答题 1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。false不是标识符。2.关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。不是关键字。class implements interface enum extends abstract。 3.boolean,char,byte,short,int,long,float,double。 4.float常量必须用F或f为后缀。double常量用D或d为后缀,但允许省略后缀。5.一维数组名.length。二维数组名.length。 二、选择题 1.C。2.ADF。3.B。4.BE。5.【代码2】【代码3】【代码4】【代码5】。6.B。 三、阅读或调试程序

第五章Java语言异常处理-实验题目

第五章Java语言异常处理--实验题目 一、实验目的 1. 掌握Java的异常处理机制。 2. 掌握try、catch、throws和finally这5个关键字的用法。 3. 掌握成员的几个异常类。 4. 掌握自定义异常的使用。 二、实验内容 1.编写程序,从键盘上输入两个数。将第一个数除以第二个数并显示结果;处理所有可能的异常。 2.写出下面程序运行的结果: 3.写出下列程序的输出结果。

4.有下列程序: 若用下面方式执行该程序,则baz的值为( )。 java Test Red Green Blue (A)“”(B)null (C)"Red”(D)”BIue”(E)”Green”(F)代码不能编译(G)程序抛出异常5.有下列程序: 该程序的输出结果为( )。 (A)没有任何输出(B)输出“Finally”(C)编译错误(D)抛出异常 6.有下列程序:

该程序的输出结果为( )。 (A)没有任何输出(B)输出“Finally”(C)编译错误(D)抛出异常7.修改下列程序的错误之处。 8.写出下列程序的运行结果。

9.编写一个程序,要求从键盘输入一个double型的圆的半径,计算并精出其面积。 测试当输入的数据不是double型数据(如字符串“abc”)会产生什么结果,怎样处理。10.编写一个应用程序,在main()方法中使用try块抛出一个Exception类的对象,为Exception的构造方法提供一个字符串参数,在catch块内捕获该异常并打印出字符串参数。添加一个finally块并打印一条消息。 11.创建一个自定义的异常类,该类继承Exception类,为该类写一个构造方法,该构造方法带一个String类型的参数。写一个方法.令其打印出保存下来的String对泉。再编写一个类,在main()方法中使用try--catch结构创建一个MyException类的对象并抛出,在catch块中捕获该异常井打印出传递的String消息。

Java2实用教程(第5版)习题解答

习题解答 习题1(第1 章) 一、问答题 1. James Gosling 2.需 3 个步骤: 1)用文本编辑器编写源文件。 2)使用 javac 编译源文件 ,得到字节码文件。 3)使用解释器运行程序。 3 .源文件由若干个类所构成。对于应用程序,必须有一个类含有 public static void main(String args[]) 的方法,含有该方法的类称为应用程序的主类。不一定,但至多有一个 public 类。 4. set classpath=D:\jdk\jre\lib\rt.jar;.; 5.java 和 class 6.java Bird 7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行) 二、选择题 1.B。 2. D。 三、阅读程序 1. ( a) Person.java。 ( b)两个字节码,分别是 Person.class 和 Xiti.class。 ( c)得到 “ NoSuchMethodError ”,得到“ NoClassDefFoundError: Xiti/class ”,得到“您好,很高兴认识您nice to meet you” 习题2(第2 章) 一、问答题 1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。 false 不是标识符。 2.关键字就是 Java 语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来 用。 true 和 false 不是关键字。 6 个关键字: class implements interface enum extends abstract。 3. boolean, char, byte, short, int, long, float, double。 4. float 常量必须用 F 或 f 为后缀。 double 常量用 D 或 d 为后缀,但允许省略后缀。 5.—维数组名.length。二维数组名.length。 二、选择题 1.C。 2. ADF 。 3. B。 4. BE。 5.【代码2】【代码3】【代码4】【代码5】。 6. B。

java异常处理例题代码教学文稿

j a v a异常处理例题代 码

App9_1.java:输出一个数组的所有元素,捕获数组下标越界异常和除娄为0异常。public class App9_1{ public static void main(String args[]){ int i; int[] a={1,2,3,4}; for(i=0;i<5;i++) System.out.println(" a["+i+"]="+a[i]); System.out.println("5/0"+(5/0)); } } App9_2.java:使用try-catch-finall语句对程序中的异常进行捕获与处理。 public class App9_2{ public static void main(String args[]){ int i; int a[]={1,2,3,4}; for (i=0;i<5;i++){ try{ System.out.print("a["+i+"]/"+i+"="+(a[i]/i)); } catch(ArrayIndexOutOfBoundsException e){ System.out.print("捕获到了数组下标越界异常"); } catch(ArithmeticException e){ System.out.print("异常类名称是:"+e); //显示异常信息 } catch(Exception e){ System.out.println("捕获"+e.getMessage()+"异常!"); //显示异常信息 } finally{ System.out.println(" finally i="+i); } } System.out.println("继续!!"); } } App9_3.java:使用throw语句在方法中抛出异常。 public class App9_3{ public static void main(String args[]){ int a=5,b=0; try{ if (b==0) throw new ArithmeticException(); //抛出异常,不是必须的 else System.out.println(a+"/"+b+"="+a/b); //若不抛出异常,则运行此行

java2实用教程第4版_习题解答

习题解答 习题一(第1章) 一、问答题 1.James Gosling 2.需3个步骤: 1)用文本编辑器编写源文件。 2)使用javac编译源文件,得到字节码文件。 3)使用解释器运行程序。 3.由类所构成,应用程序必须有一个类含有public static void main(String args[])方法,含有该方法的类称为应用程序的主类。不一定,但最多有一个public类。 4.set classpath=D:\jdk\jre\lib\rt.jar;.; 5.java和class 6. java Bird 7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行) 二、选择题 1.B。2.D。 三、阅读程序 1.(a)Person.java。(b)两个字节码,分别是Person.class和Xiti.class。(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很高兴认识您nice to meet you” 习题二(第2章) 一、问答题 1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。false不是标识符。2.关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。不是关键字。class implements interface enum extends abstract。 3.boolean,char,byte,short,int,long,float,double。 4.float常量必须用F或f为后缀。double常量用D或d为后缀,但允许省略后缀。5.一维数组名.length。二维数组名.length。 二、选择题 1.C。2.ADF。3.B。4.BE。5.【代码2】【代码3】【代码4】【代码5】。6.B。

java异常处理例题代码

App9_1.java:输出一个数组的所有元素,捕获数组下标越界异常和除娄为0异常。public class App9_1{ public static void main(String args[]){ int i; int[] a={1,2,3,4}; for(i=0;i<5;i++) System.out.println(" a["+i+"]="+a[i]); System.out.println("5/0"+(5/0)); } } App9_2.java:使用try-catch-finall语句对程序中的异常进行捕获与处理。 public class App9_2{ public static void main(String args[]){ int i; int a[]={1,2,3,4}; for (i=0;i<5;i++){ try{ System.out.print("a["+i+"]/"+i+"="+(a[i]/i)); } catch(ArrayIndexOutOfBoundsException e){ System.out.print("捕获到了数组下标越界异常"); } catch(ArithmeticException e){ System.out.print("异常类名称是:"+e); //显示异常信息 } catch(Exception e){ System.out.println("捕获"+e.getMessage()+"异常!"); //显示异常信息 } finally{ System.out.println(" finally i="+i); } } System.out.println("继续!!"); } } App9_3.java:使用throw语句在方法中抛出异常。 public class App9_3{ public static void main(String args[]){ int a=5,b=0; try{ if (b==0) throw new ArithmeticException(); //抛出异常,不是必须的 else System.out.println(a+"/"+b+"="+a/b); //若不抛出异常,则运行此行

java2实用教程试题

第1章Java 语言入门 1-1开发与运行Java程序需要经过哪些主要步骤和过程? 1-2怎样区分应用程序和小应用程序?应用程序的主类或小应用程序的主类必须用public修饰吗? 1-3Java程序是有什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎样的? 1-4在运行小应用程序的html文件中可以使用codebase属性制定小应用程序的字节码所驻留的目录。如果不使用codebase属性,小应用程序的字节码文件必须和运行它的html在同一目录中,编写一个小应用程序并将它的字节码存放在某个目录中,比如c:\Boy. 把运行该小应用程序的html文件(注意其中的codebase属性): < applet code=你的小程序的字节码wdith=20 height=30 codebase=c:\boy> 存放在另一个目录中(查阅有关编写网页方面的书籍,会有更 详细的关于怎样在一个网页中嵌入一个小应用程序的讲解)。 第2章标识符、关键字和数据类型 2-1上机运行下列程序,注意观察输出的结果。

public class E { public static void main ( string args [ ] ) { for (int i=20302; i<=20302; i++) { System.out. println (( char ) i ); } } 2-2System.out. println (“你好”);可输出字符串值,也可以使用System.out. println()输出变量或表达式的值,只需使用并置 符号:“+”将变量、表达式或一个常数值与一个字符串并置即 可,如System.out. println(“”+x);System.out. println(“:” +123+“大于”+122)等。上机调试下列程序,注意观察结果,特别注意System.out. print()和System.out. println()的区 别。 public class OutputData { public static void main ( string args [ ] ) { int x=234, y=432 ; System.out. println (“:” +x+“<”+2*x); System.out. print (“我输出结果后不回车“); System.out. println (“我输出结果后自动回车到下一行”); } }

Java2实用教程试题综合

可选试题 判断题 ×1.Java是低级语言 √2.Java是面向对象的程序设计语言 ×3.Java是编译型的计算机语言 √5.Java源程序文件的后缀是.java ×10.一个Java源程序文件中可以有多个public类 √11.一个Java源程序中可以有多个类 ×12.一个Java Applet源程序的主类可以有多个父类 √13.Java应用程序的入口方法是main √14.Java应用程序(Application)的主类中一定要有主方法(main) √16.Java小程序(Applet)的主类的父类必须是类Applet ×17.Java语言中的逻辑变量可以和整型变量相互强制转换 ×18.在程序中可对用final修饰的变量的值进行更改 ×27.双精度数强制转换成单精度数后,其数值精度提高 ×11.方法可以有多个返回值 ×5.重载的方法可以通过它们的返回值类型的不同来区分 √16.定义在方法体中的变量能与定义在方法体外的变量同名 √6.一个对象一定要属于某个类 ×7.构造函数的方法名可由编程人员任意命名 √8.类的构造函数名必须和类名相同 √10.构造函数可以重载 ×11.如果一个类定义中没有定义构造函数,该类就没有构造函数 √12.如果一个类定义中已经定义了构造函数,java不会再给它提供默认的构造函数 ×11.静态属性和静态方法属于类的一个具体对象 √12.static 变量能是private 变量 ×14.static方法能处理非static成员 √15.非static方法能处理static成员 ×16.static方法中能有this引用 ×18.类的私有属性和私有方法能被其子类直接访问 √12.子类的成员变量能与其父类的成员变量同名 ×14.子类可以重新定义从父类继承来的同名方法,并且允许它们有不同类型的返回值 √15.接口支持多继承(extends) √15.一个接口能够继承(extends)多个接口 ×7.抽象类只能做为父类 ×8.可以定义抽象类的对象 √9.抽象方法能被继承 √10.抽象方法只能存在于抽象类或接口中

java2实用教程(第3版例子代码)

Java 2实用教程(第三版) 清华大学出版社 (编著耿祥义张跃平) 例子源代码 建议使用文档结构图 (选择Word菜单→视图→文档结构图)

第一章Java 语言入门例子1 public class Hello { public static void main (String args[ ]) { System.out.println("你好,很高兴学习Java"); } } 例子2 public class People { int height; String ear; void speak(String s) { System.out.println(s); } } class A { public static void main(String args[]) { People zhubajie; zhubajie=new People(); zhubajie.height=170; zhubajie.ear="两只大耳朵"; System.out.println("身高:"+zhubajie.height); System.out.println(zhubajie.ear); zhubajie.speak("师傅,咱们别去西天了,改去月宫吧"); } } 例子3 import java.applet.*; import java.awt.*; public class Boy extends Applet { public void paint(Graphics g) { g.setColor(Color.red); g.drawString("我一边喝着咖啡,一边学Java呢",5,30); g.setColor(Color.blue);

java异常处理试题及答案

异常处理练习题 一、选择题 1.java中用来抛出异常的关键字是 (C) A、try B、catch C、throw D、finally 2.关于异常,下列说法正确的是(A) A、异常是一种对象 B、一旦程序运行,异常将被创建 C、为了保证程序运行速度,要尽量避免异常控制 D、以上说法都丌对 3.(A)类是所有异常类的父类。 A、Throwable B、Error C、Exception D、AWTError 4.java语言中,下列哪一子句是异常处理的出口(C) A、try{…}子句 B、catch{…}子句 C、finally{…}子句 D、以上说法都丌对 5.下列程序的执行,说法错误的是 (C) public class MultiCatch { public static void main(String args[]) { try { int a=args.length; int b=42/a; int c[]={1}; c[42]=99; System.out.println(“b=”+b); } catch(ArithmeticException e) { System.out.println(“除0异常:”+e); } catch(ArrayIndexOutOfBoundsException e) { System.out.println(“数组超越边界异常:”+e); } } } A、程序将输出第15行的异常信息 B、程序第10行出错 C、程序将输出“b=42”

D、程序将输出第15和19行的异常信息 6.下列程序的执行,说法正确的是(D) class ExMulti { static void procedure() { try { int c[]={1}; c[42]=99; } catch(ArrayIndexOutOfBoundsException e) { System.out.println(“数组超越界限异常:”+e); } } public static void main(String args[]) { try { procedure(); int a=args.length; int b=42/a; System.out.println(“b=”+b); } catch(ArithmeticException e) { System.out.println(“除0异常:”+e); } } } A、程序只输出第12行的异常信息 B、程序只输出第26行的异常信息 C、程序将不输出异常信息 D、程序将输出第12行和第26行的异常信息 7.下面程序抛出了一个“异常”并捕捉它。请在横线处填入适当内容完成程序。class TrowsDemo { static void procedure() throws IllegalAccessExcepton { System.out.println(“inside procedure”); throw__new_____IllegalAccessException(“demo”);

《java2实用教程》(第四版)课后答案 第七章-第八章

Java程序设计第三次作业 第7章习题 4.1程序代码 import java.util.*; public class SUMANDAVERAGE { public static void main(String[] args) { Scanner reader=new Scanner(System.in); double sum=0; int m=0; while(reader.hasNextDouble()){ double x=reader.nextDouble(); assert x>=0&&x<=100:"该数是非法的成绩数据!"; m=m+1; sum=sum+x; } System.out.printf("%d个数的和为%f\n", m,sum); System.out.printf("%d个数的平均值为%f\n",m,sum/m); } } 4.2运行结果 第8章习题 4.1程序代码 package kehou; import java.util.Calendar; import java.util.InputMismatchException; import java.util.Scanner; public class BC8_4 { public static void main(String[] args) { System.out.print("请选择你要完成的功能:\n1,转换字母大小写及连接两个字符串。\n2,得到字符串第一个和最后一个字符。\n3,计算两个时间之间的间隔天数。\n" + "4,使用简单的Math类用法。\n5,剔除字符串中的非数字字符。\n6,解析字符串。\n."); System.out.print("输入数字i(i=1...6;输入0结束!):"); Scanner reader=new Scanner(System.in);

Java2实用教程(第三版)课后习题参考答案

第4章类、对象和接口 1. 类中的实例变量在什么时候会被分配内存空间? 答: 当该类创建对象之后,实例变量才会被分配相应的内存空间。 2. 什么叫方法的重载?构造方法可以重载吗? 答:①一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参数的个数不同,或者是参数的类型不同(方法的重载体现了多态性,即功能多态性)。 ②构造方法可以重载。 3. 类中的实例方法可以操作类变量(static变量)吗?类方法(static方法)可 以操作实例变量吗? 答:①类中的实例方法可以操作类变量。 ②类方法不可以操作实例变量 4. 类中的实例方法可以用类名直接调用吗? 答: 类中的实例方法不可以用类名直接调用。 5. 举例说明protected方法和友好方法的区别。 答: 当子类与父类不在同一个包中时,子类可以继承父类的protected方法;而友好方法此时则不能被子类继承。 6. 举例说明类变量和实例变量的区别。 答:⑴书写: 定义成员变量时,类变量有static修饰;实例变量没有static修饰。例: class A { int x; //实例变量 static int y; //类变量 } ⑵内存: 不创建对象,类的实例变量不会被分配内存空间;类变量被分配相应的内存空间。 不同对象的实例变量被分配不同的内存空间;不同对象的类变量被分配相同的内存空间。 任何一个对象改变类变量,其他对象的相应类变量也发生相应变化。 一个对象的实例变量发生改变,不影响其他对象的相应实例变量。 例: 执行语句: A1.x=10; A1.y=20; 这时A2.x的值也是10;而A2.y的值保持原来的初值。 ⑶使用: 类变量可以被类方法操作;而实例变量不能被类方法操作。 例: class A { int x; static int y; static void func() {

java 异常处理题目

狂翔软件自定义异常章节题目 一.选择题: 1.关于异常的定义,下列描述中最正确的一个是() a)程序编译错误 b)程序语法错误 c)程序自定义的异常事件 d)程序编译或运行中所发生的可预料或不可预料的异常事件,它会引起程序的中断,影响程 序的正常运行 2.抛出异常时,应该使用下列哪个子句 a)thow b)catch c)finally d)throws 3.自定义异常类时,可以通过对现列哪一项进行继承() a)Error 类b)Applet类c)Exception类及其子集d)AssertionError类 4.当方法产生该方法无法确定该如何处理导演时,应该如何处理 a)声明异常B)捕获异常C)抛出异常D)嵌套异常 5.对于try和catch子句的排列方式,下列哪一项是正确的 a)子类异常在前,父类异常其后 b)父类异常在前,子类异常其后 c)只能有子类异常 d)父类异常和子类异常不能同时出现在同一个try程序段内 6.下列java语言的常用异常类中,属于检测异常的是() a)ArithmeticException b)FileNotFoundException c)NullPointerException d)IOException 7.下面描述中,错误的一项是() a)一个程序抛出异常,任何其他在运行中的程序都可以捕获 b)算术溢出需要进行异常处理 c)在方法中监测到错误但不知道如何处理错误时,方法就声明一个异常 d)任何没有被程序捕获的异常将最终被默认处理程序处理 8.下列描述中,正确的一个是 a)内存耗尽不需要进行异常处理 b)除数为零需要进行异常处理 c)异常处理通常比传统的控制结构流效率更高 d)编译器要求必须设计实现优化的异常处理 9.下列错误不属于Error的是 a)动态链接失败b)虚拟机错误C)线程死锁D)被零除 10.下列描述中,错误的一个是() a)异常抛出点后的代码在抛出异常后不再执行 b)任何没有被程序捕获的异常将最终被缺省处理程序处理 c)异常还可以产生于JA VA虚拟机内部的错误 d)一个TRY代码段后只能跟有一个CATCH代码段 11.下列描述中不属于java异常处理机制优点的一项是 a)把错误处理代码从正常代码中分离出来

Java2实用教程课后复习题参考答案

Java2 实用教程(第三版) 课后习题参考答案 第1 章Java 入门 1. 开发与运行Jav a 程序需要经过哪些主要步骤和过程? 答:( 1)编写Java 源文件:使用文本编辑器(Edit 或记事本),拓展名为.java (2)编译Java 源文件:使用Java 编译器(javac.exe)。得到字节码文件*.class (3)运行Java 程序:Java 应用程序使用Java 解释器(java.exe)执行字节码文件; Java 小应用程序使用支持Java 标准的浏览器来执行。 2. 怎样区分应用程序和小应用程序?应用程序的主类或小应用程序的主类必须用public 修饰吗? 答:①应用程序必须有main 方法,这个方法是程序执行的入口。 小应用程序没有main 方法。 ②应用程序的主类不一定用public 修饰;小应用程序的主类必须用public 修饰。 3. Jav a 程序是由什么组成的?一个程序中必须要有public 类吗?Jav a 源文件的命名规则是怎样的?答:①Java 程序由类组成。 ②应用程序可以没有public 类;小应用程序一定有一个类是public 类(主类)。 ③应用程序:如果只有一个类,源文件名与该类的类名相同,拓展名为.java; 有多个类时,如果有public 类(最多一个),源文件名与public 类的类 名相同,拓展名是.java;没有public 类,源文件名与任何一个类的类名 相同即可,拓展名为.java。 小应用程序:源文件名与主类的类名相同,拓展名是.java。 4. 在运行小程序的HTM L 文件中可以使用codebas e 属性指定小程序的字节码所驻留的目录。如果不使用 codebas e 属性,小程序的字节码文件必须和运行它的HTM L 文件在同一目录中。编写一个小程序并将小程 序的字节码存放在某个目录中,比如C:\5000;把运行该小程序的HTM L 文件(注意其中的codebas e 属性): 存放在另一个目录中。 答:以书中小应用程序为例进行说明: ①编写Java 小应用程序源代码 import java.applet.*; import java.awt.*; public class Boy extends Applet {

java2实用教程第4版-习题解答

习题解答 习题一(第 1 章) 一、问答题 1.James Gosling 2.需3 个步骤: 1) 用文本编辑器编写源文件。 2) 使用javac 编译源文件,得到字节码文件。 3) 使用解释器运行程序。 3.由类所构成,应用程序必须有一个类含有public static void main(String args[]) 方法,含 有该方法的类称为应用程序的主类。不一定,但最多有一个public 类。 4.set classpath=D:\jdk\jre\lib\rt.jar;.; 5. java 和class 6. java Bird 7. 独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行) 二、选择题 1. B。 2. D。 三、阅读程序 1 . ( a) Person.java。 ( b)两个字节码,分别是Person.class 和Xiti.class。 ( c)得到 “ NoSuchMethodError ”,得到“ NoClassDefFoundError: Xiti/class ”,得到“您好,很高兴认识您nice to meet you” 习题二(第 2 章) 一、问答题 1. 用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。false 不是标识符。 2. 关键字就是Java 语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。不是关键字。class implements interface enum extends abstract。 3. boolean,char,byte,short,int,long,float,double。 4. float 常量必须用F 或f 为后缀。double 常量用D 或d 为后缀,但允许省略后缀。 5. —维数组名.length。二维数组名.length。 二、选择题 1. C。 2. ADF。 3. B。 4. BE。 5.【代码2】【代码3】【代码4】【代码5】。 6. B。

java异常处理试题及答案

异常处理练习题 一、选择题 中用来抛出异常的关键字是(C) A、try B、catch C、throw D、finally 2.关于异常,下列说法正确的是(A) A、异常是一种对象 B、一旦程序运行,异常将被创建 C、为了保证程序运行速度,要尽量避免异常控制 D、以上说法都丌对 3.(A)类是所有异常类的父类。 A、Throwable B、Error C、Exception D、AWTError 语言中,下列哪一子句是异常处理的出口(C) A、try{…}子句 B、catch{…}子句 C、finally{…}子句 D、以上说法都丌对 5.下列程序的执行,说法错误的是(C) public class MultiCatch { public static void main(String args[]) { try { int a=; int b=42/a; int c[]={1}; c[42]=99; } catch(ArithmeticException e) { 除0异常:”+e); } catch(ArrayIndexOutOfBoundsException e) { 数组超越边界异常:”+e); } } } A、程序将输出第15行的异常信息 B、程序第10行出错 C、程序将输出“b=42”

D、程序将输出第15和19行的异常信息 6.下列程序的执行,说法正确的是(D) class ExMulti { static void procedure() { try { int c[]={1}; c[42]=99; } catch(ArrayIndexOutOfBoundsException e) { 数组超越界限异常:”+e); } } public static void main(String args[]) { try { procedure(); int a=; int b=42/a; } catch(ArithmeticException e) { 除0异常:”+e); } } } A、程序只输出第12行的异常信息 B、程序只输出第26行的异常信息 C、程序将不输出异常信息 D、程序将输出第12行和第26行的异常信息 7.下面程序抛出了一个“异常”并捕捉它。请在横线处填入适当内容完成程序。class TrowsDemo { static void procedure() throws IllegalAccessExcepton { procedure”); throw__new_____IllegalAccessException(“demo”);

java2实用教程习题

习题8 1.问答题 (1)”\hello”是正确的字符串常量吗 (2)“你好KU”.length()和“\n\t\t”.length()的值分别是多少“Hello”.equals(“hello”)和”java”.equals(“java”)的值分别是是多少 “Bird”pareTo(“Bird fly”)的值是正数还是负数 “I love this game”.contains(“love”)的值是true吗 “RedBird”.indexOf(“Bird”)的值是多少“RedBird”.indexOf(“Cat”)的值是多少 执行(“”);会发生异常吗 2 选择题 1.下列哪个叙述是正确的( ) A.String类是final类,不可以有子类 B.String类在包中 C.“abc”==”abc”的值是false D.“abc”.equals(”Abc”)的值是true 2.下列哪个表达式是正确的(无编译错误) A.int m=(“567”); B.int m=(“567”); C.byte m=(“2”); D.float m=(“”); 3.对于如下代码,下列哪个叙述是正确的 public class E { public static void main(String[] args) { String strOne="bird"; String strTwo=strOne; strOne="fly"; 【代码】 } } A.程序编译出现错误 B.程序标注的【代码】的输出结果是bird C.程序标注的【代码】的输出结果是fly D.程序标注的【代码】的输出结果是null 4.对于如下代码,下列哪个叙述是正确的 public class E { public static void main(String[] args) { String s1=args[1]; String s2=args[2]; String s3=args[3]; } } A.程序出现编译错误

相关主题
文本预览
相关文档 最新文档