Java程序设计与实践教程_王薇主编_答案

合集下载

Java程序设计实例与操作答案

Java程序设计实例与操作答案

Java程序设计实例与操作答案第⼀章认识Java⼀.选择题1.D2.B3.D4.D⼆.简答题1.Java语⾔有三个技术分⽀,并且产⽣了三个版本的Java运⾏平台,分别是J2SE 标准版,主要⽤于开发桌⾯应⽤程序、低端服务器应⽤程序和Java Applet程序;J2EE 企业版,主要⽤于开发分布式⽹络程序,如电⼦商务⽹站和ERP系统等;J2ME 精简版,主要⽤于嵌⼊式系统开发,如移动电话、掌上电脑(PDA)以及其他⽆线设备。

2.Java应⽤程序和Java Applet程序。

Java应⽤程序要依赖JRE或JDK中的解释器来运⾏,⽽Java Applet程序的调⽤命令嵌⼊在⽹页的HTML代码⽂件中,显⽰⽹页时由Web 浏览器内置的Java解释器解释执⾏,并将其内容显⽰⽹页中。

3.Java虚拟机JVM是Java V irtual Machine的缩写。

JVM是⼀个虚构出来的计算机,它有⾃⼰完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。

Java字节码⽂件包括的代码就是基于JVM的。

4.Java语⾔主要有简单、⾯向对象、分布式、健壮、安全、跨平台、解释执⾏、多线程和动态执⾏的特点。

5.开发Java应⽤程序时,⾸先使⽤任何⽂本编辑器创建和编辑Java源程序,保存源程序⽂件时,⽂件的扩展名为“*.java”。

然后使⽤“javac 程序名.java”命令把源程序编译为字节码⽂件,最后使⽤“java 程序名”将字节码⽂件翻译为计算机可以理解的指令并运⾏。

开发Java⼩程序时,⾸先使⽤任意纯⽂本编辑器编写Java源程序和HTML⽂件,并分别以扩展名“.java”和“.html”保存。

其中,HTML⽂件中应包含调⽤Java字节码⽂件的指令。

HTML⽂件可以使⽤IE浏览器浏览,也可以使⽤JDK提供的Appletviewer⼯具浏览。

三.编程题1.解答//Test.javaclass Person {String name;String address;String telephone;Person(String name1, String address1, String telephone1) {name = name1; address = address1; telephone = telephone1;}String getName() {return name; }String getAddress() {return address; }String getTelephone() {return telephone; }}public class Test {public static void main(String[] args) {Person lily = new Person("lily", "⾦企鹅18号", "158********");System.out.println("姓名:" + lily.getName());System.out.println("地址:" + lily.getAddress());System.out.println("电话号码:" + lily.getTelephone());}}2.解答⽂件TestApplet.java与TestApplet.html都放在d盘根⽬录下。

java语言程序设计课后答案

java语言程序设计课后答案

java语言程序设计课后答案作业参考答案习题一4、如何建立和运行Java程序,首先启动文本编辑器,如记事本、UltraEdit等,编辑程序代码,并以.Java作为文件扩展名保存程序源代码;然后进入dos环境利用javac编译源程序,生成扩展名为.class的字节码文件;再利用命令java运行字节码文件,得到程序的运行结果。

在集成开发环境Jbuilder、Eclipse下,可以完成程序的编辑、编译、调试及运行等所有任务。

5、public class LikeJava{public static void main(String [] args){System.out.println(“I Like Java Very much!”);}}习题二5、(1) 45 (2) false (3) 14 (4) 14 (5),6 (6) true(7) 129、public class Volume{public static void main(String [] args) {double r=0,v=0;r=double.parseDouble(args[0]);v=4*3.14159/3*r*r*r;System.out.println(“球体积为:”+v);}}习题三8、public class Factorials {public static void main(String args[]) {int i, j;long s=0, k;i=1;do //外循环开始{k = 1;j=1;do{//内循环开始k = k * j; //内循环体j++;}while(j<=i);//内循环结束System.out.println(i + "!=" + k);s = s + k;i++;}while(i<=20); //外循环结束System.out.println("Total sum=" + s); }}10、public class Num{public static void main(String[]args) {int i,j,k,n;for (n=100;n<1000;n++){i=n/100;j=(n-i*100)/10;k=n%10;if (i*i*i+j*j*j+k*k*k==n)System.out.print(n+" ");}}}习题四5、import java.util.Scanner;class Factor{long fac(int m){if(m==0||m==1)return 1;else return m*fac(m-1);}public static void main(String [] args){int i,n;long sum=0;String s="";Scanner input=new Scanner(System.in);System.out.print("Please input n: ");n=input.nextInt();Factor f=new Factor();for(i=1;i<=n;i++){ System.out.println(f.fac(i));sum=sum+f.fac(i);s=s+i+"!+";}System.out.println(s.substring(0,s.length()-1)+"="+sum); }}习题五2、import java.io.*;public class YangHuiOk{public static void main (String args[]) throws IOException {int max,a[][],i,j;char x;System.out.print("请输入杨辉三角要显示的行数: ");x=(char)System.in.read();max = Integer.parseInt(String.valueOf(x));a=new int[max][];for (i=0;i<max;i++){a[i]=new int[i+1];}a[0][0]=1;for (i=1;i<max;i++){a[i][0]=1;a[i][a[i].length-1]=1;for (j=1;j<a[i].length-1;j++){a[i][j]=a[i-1][j-1]+a[i-1][j];}}for(i=0;i<max;i++){//for(j=0;j<=max-i;j++) System.out.print(" ");for(j=0;j<=a[i].length-1;j++) System.out.print(a[i][j]+" "); System.out.println();}}}5、import java.util.Scanner;public class MatrixTurn {public static void main (String[] args) {int m,n;Scanner input=new Scanner(System.in);System.out.print("请输入矩阵的行数: ");m=input.nextInt();System.out.print("请输入矩阵的列数: ");n=input.nextInt();Matrix t=new Matrix(m,n);for(int i=1;i<=m;i++)//为矩阵各元素赋值for (int j=1;j<=n;j++)t.setElement(Math.random(),i,j);System.out.println("转置前的矩阵如下: ");for(int i=1;i<=m;i++){for (int j=1;j<=n;j++)//System.out.print(t.matrix[i][j]+" ");System.out.print(t.getElement(i,j)+" ");//访问矩阵元素方法1 System.out.println();}Matrix z;//声明转置矩阵z=t.turn(t);System.out.println("转置后的矩阵如下: ");for(int i=0;i<n;i++){for (int j=0;j<m;j++)System.out.print(z.matrix[i][j]+" ");//访问矩阵元素方法2,前提是matrix前无privateSystem.out.println();}}}习题六9、public class Vehicle,String color, kind;int speed;Vehicle(){color=”Red”;kind=”卡车”;speed=0;}public void setColor(String color1) { color=color1;}public void setSpeed(String speed1) { speed=speed1;}public void setKind(String kind1) { kind=kind1;}public String getColor( ) {return color;}public String getKind( ) {return kind;}public int getSpeed( ) {return speed;}public static void main(String [] args){Vehicle che=new Vehicle ();Che.setColor(“Blue”);Che.setSpeed(150);Che.setKind(“跑车”);System.out.p rintln(“有一辆”+che.getColor()+”的”+che.getKind()+”行驶在高速公路上”);System.out.println(“时速”+che.getSpeed()+”km/h”); }}习题七 7、public class Vehicle ,String color, kind;int speed;Vehicle(){color=” ”;kind=” ”;speed=0;}public void setColor(String color1){color=color1;}public void setSpeed(String speed1) {speed=speed1;}public void setKind(String kind1) {kind=kind1;}public String getColor( ) {return color;}public String getKind( ) {return kind;}public int getSpeed( ) {return speed;}}public class Car extends Vehicle {int passenger;public Car(){super();passenger=0;}public void setPassenger(int passenger){this. passenger = passenger; }public int getPassenger( ) {return passenger;}public static void main(String [] args){Car benz=new Car();benz.setColor(“Yellow”);benz.setKind(“roadster”);benz.setSpeed(120);benz.setPassenger(4);System.out.println(“benz: “);System.out.println(“Color “+benz.getColor());System.out.print(“Speed (km/h)“);System.out.println(benz.getSpeed()); System.out.println(“Kind: “+benz.getKind()); System.out.print(“Passenger: “);System.out.println(benz.getPassenger());}}习题九4、import java.io.*;public class UseException{public static void main(String [] args){System.out.println("请输入一个整数字符串");try{BufferedReader in=new BufferedReader(new InputStreamReader(System.in));int a=Integer.parseInt(in.readLine());System.out.println("您输入的整数是:"+a);}catch(IOException e){System.out.println("IO错误");}catch(NumberFormatException e1){System.out.println("您输入的不是一个整数字符串");}}}习题十 7、import java.io.*;public class SaveName {public static void main(String [] args){try{BufferedReader br=new BufferedReader(newInputStreamReader(System.in));BufferedWriter bw=new BufferedWriter(new FileWriter("name.txt"));String s;while(true){System.out.println("请输入姓名:");s=br.readLine();if(s.length()==0)break;bw.write(s);bw.newLine();}br.close();bw.close();}catch(FileNotFoundException e){System.out.println(e.toString());}catch(IOException e1){System.out.println(e1.toString());}}}8、import java.io.*;public class SaveGrade{public static void main(String [] args){try{BufferedReader br=new BufferedReader(newInputStreamReader(System.in));BufferedWriter bw=new BufferedWriter(new FileWriter("grade.txt"));String s,ss;while(true){System.out.println("请输入姓名:");s=br.readLine();if(s.length()==0)break;bw.write(s);bw.newLine();System.out.println("请输入学号:");s=br.readLine();bw.write(s);bw.newLine();System.out.println("请输入成绩:");s=br.readLine();bw.write(s);bw.newLine();}br.close();bw.close();int max=0,min=100,total=0,num=0;BufferedReader bf=new BufferedReader(new FileReader("grade.txt")); while(true){ss=bf.readLine();if(ss==null)break;ss=bf.readLine();ss=bf.readLine();int grade=Integer.parseInt(ss);total+=grade;num+=1;if(grade>max)max=grade;if(grade<min)min=grade;}System.out.println("学生成绩中最高为:"+max+",最低为:"+min+",平均分为:"+total*1.0/num);bf.close();}catch(FileNotFoundException e){System.out.println(e.toString());}catch(IOException e1){System.out.println(e1.toString());}}}习题十一6、import java.awt.*;import java.awt.event.*;public class ChangeColor extends Frame { private Button red=new Button("红");private Button green=new Button("绿"); private Button blue=new Button("蓝"); private TextField text=new TextField(); public ChangeColor(){super("改变颜色");this.setLayout(null);text.setBackground(Color.WHITE);red.setBounds(25,50,50,20);this.add(red);green.setBounds(125,50,50,20);this.add(green);blue.setBounds(225,50,50,20);this.add(blue);text.setBounds(25,100,250,30);this.add(text);red.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) {text.setBackground(Color.RED);}});green.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) {text.setBackground(Color.GREEN);}});blue.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) {text.setBackground(Color.BLUE);}});addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}});setSize(300,200);setVisible(true);}public static void main (String[] args){ChangeColor color=new ChangeColor(); }}习题十二5、import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Goods extends JFrame {private JComboBox list;private JTextArea info;private String names[]={"请选择你要查询的商品","A商品","B商品","C商品","D商品","E商品","F商品"};private String goods[][]={ {"","",""},{"A商品","北京",",300"},{"B商品","上海",",400"},{"C商品","广州",",500"},{"D商品","长沙",",600"},{"E商品","武汉",",700"},{"F商品","天津",",800"}};public Goods(){super("商品信息");Container pane=this.getContentPane();pane.setLayout(new BorderLayout());list=new JComboBox(names);info=new JTextArea(5,20);pane.add(list,BorderLayout.NORTH);pane.add(info,BorderLayout.CENTER);list.addItemListener(new ItemListener(){ public void itemStateChanged(ItemEvent e) {int index=list.getSelectedIndex();info.setText("商品名:"+goods[index][0]+"\n"); info.append("产地:"+goods[index][1]+"\n"); info.append("价格:"+goods[index][2]+"\n"); }});this.setSize(250,300);this.setVisible(true);}public static void main (String[] args) {Goods ccc=new Goods();ccc.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e) {System.exit(0);}});}}。

Java程序设计入门与实战(微课版)习题答案

Java程序设计入门与实战(微课版)习题答案

习题答案第1章习题答案一、选择题1. A2. D3. C4. B5. B6. D二、编程题第2章习题答案一、选择题1. A2. A3. C4. D5. D二、填空题1. 02. parseInt3. 104. for(int i=3;i>=0;i--){ System.out.print(array[i]);}5. for (int i = 0; i < arry.length; i++) {System.out.print(arry[i]);}三、编程题第3章习题答案一、选择题1. D2. B3. B4. C5. A二、填空题1. 封装、继承、多态2. 同一个类中包含两个或以上的方法名相同,参数列表不同的方法,称为方法重载。

3. private、protected、public、default4. this.AnimalName、getAnimalName()5. Test t = new Test()、t.method()、Test.smethod()三、编程题1.第4章习题答案一、选择题1. D2. D3. C4. B5. D二、填空题1. 单、多2. 重写、重载3.(1) A and A (2) A and A (3) A and D (4) B and A (5) B and A (6) A and D (7) B and B (8) B and B (9) A and D三、编程题第5章习题答案一、选择题1. A2. B3. D4. B5. C二、填空题1. 抽象、final2. public void mult(int x, int y) {result = x * y;}、public void show() {System.out.println(result);}、c.show()。

3. 接口接口4. Dog t1 = new Dog()、t1.eat()、t1.run()5. 0、99三、编程题第6章习题答案一、选择题1. B2. A3. B4. C5. D二、填空题1. SimpleDateFormat time = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss")2. public String toString() {return "Student [name=" + name + ", age=" + age + ", gender=" + gender + "]";}3. int num = (int)(Math.random() * 10)+14. String regex = "\\." 、String str1 = str.replaceAll(regex, "")三、编程题6.第7章习题答案一、选择题1. A2. B3. C4. B5. B二、填空题1. try-catch-finally 2.ABCC 3.AC 4.AA三、编程题第8章习题答案一、编程题第9章习题答案一、选择题1.D2.A二、填空题1. 502. cbda3. n-1三、编程题第10章习题答案一、选择题1. D2. C3. A二、填空题1. i = 1; i <= 9; i++、j = 1; j <= i; j++2. 1、i * values(i - 1)三、编程题4.5.。

java语言程序设计课后习题答案解析

java语言程序设计课后习题答案解析

习题23.使用“= =”对相同内容的字符串进行比较,看会产生什么样的结果。

答:首先创建一个字符串变量有两种方式:String str = new String("abc");String str = "abc";使用“= =”会因为创建的形式不同而产生不同的结果:String str1 = "abc";String str2 = "abc";System.out.println(str1= =str2); //trueString str1 = new String("abc"); String str2 = "abc";System.out.println(str1= =str2); //falseString str1 = new String("abc"); String str2 = new String("abc"); System.out.println(str1= =str2); //false因此自符串如果是对内容进行比较,使用equals方法比较可靠。

String str1 = "abc";String str2 = "abc";System.out.println(str1= =str2); //trueString str1 = new String("abc"); String str2 = "abc";System.out.println(str1.equals(str2)); //trueString str1 = new String("abc"); String str2 = new String("abc"); System.out.println(str1.equals(str2)); //true5.编写一个程序,把变量n的初始值设置为1678,然后利用除法运算和取余运算把变量的每位数字都提出来并打印,输出结果为:n=1678。

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

Java程序设计实用教程(第4版)习题解答与实验指导叶核亚编著2013年11月目录“Java程序设计”课程教学要求 (1)第1章Java概述 (3)第2章Java语言基础 (5)第3章类的封装、继承和多态 (22)第4章接口、内部类和Java API基础 (37)第5章异常处理 (42)第6章图形用户界面 (44)第7章多线程 (49)第8章输入/输出流和文件操作 (51)“Java程序设计”课程教学要求1. 课程性质、目的和任务程序设计是高等学校计算机学科及电子信息学科各专业本科的核心专业基础课程,是培养学生软件设计能力的重要课程。

在计算机学科的本科教学中,起着非常重要的作用。

“Java程序设计”是计算机科学与技术专业本科的专业基础限选课,开设本课程的目的是:进行程序设计和面向对象方法的基础训练;使用Java编程技术,设计解决操作系统、网络通信、数据库等多种实际问题的应用程序。

本课程通过全面、系统地介绍Java语言的基础知识、运行机制、多种编程方法和技术,使学生理解和掌握面向对象的程序设计方法,理解和掌握网络程序的特点和设计方法,建立起牢固扎实的理论基础,培养综合应用程序的设计能力。

本课程的先修课程包括:C/C++程序设计I、C/C++程序设计II、数据结构、操作系统、计算机网络、数据库原理等。

2. 教学基本要求本课程的基本要求如下。

①了解Java语言特点,理解Java Application应用程序的运行原理和方法。

掌握在JDK 环境中编译和运行程序的操作,熟悉在MyEclipse集成开发环境中,编辑、编译、运行和调试程序的操作。

②掌握Java语言中语句、数组、引用类型等基本语法成分的使用方法,通过类、接口、内嵌类型、包、异常处理等机制表达和实现面向对象程序设计思想。

③掌握Java的多种实用技术,包括图形用户界面、多线程、文件操作和流、使用URL 和Socket进行网络通信等。

④熟悉Java JDBC数据库应用的设计方法。

java程序设计课后练习答案

java程序设计课后练习答案

1.2.1 什么是硬件和软件?硬件是指计算机中可见的物理部分(比如:处理器,显示器,鼠标,键盘等),而软件提供不可见的指令(常用的软件程序:应用软件,系统软件,病毒等)。

1.2.2 列举计算机的 5个主要硬件组件。

中央处理器(CPU)、内存、存储设备、输入设备和输出设备、通信设备。

1.2.3 缩写“CPU”代表什么含义?Central Processing Unit1.2.4 衡量 CPU速度的单位是什么?Hz(赫兹)、MHz(兆赫兹)、GHz(吉赫兹)1.2.5 什么是比特? 什么是字节?比特就是二进制数字系统中的数,计算机中字节是最小的存储单元1.2.6 内存是用来做什么的?RAM代表什么?为什么内存成为RAM?计算机的内存由一个有序的字节序列组成,用于存储程序及程序需要的数据。

RAM代表随机访问存储器。

每个字节都有唯一的地址,使用这个地址确定字节的位置,以便于存储和获取数据,因为可以按任意顺序存取字节,所以内存也被称为: 随机访问存储器(RAM)。

1.2.7 用于衡量内存大小的单位是什么?字节1.2.8 用于衡量磁盘大小的单位是什么?B、KB、MB、GB1.2.9 内存和永久存储设备的主要不同是什么?内存和永久存储设备的不同是计算机的内存是一种易失的数据保存形式:断电时存储在内存中的信息就会丢失。

程序和数据被永久的存放在存储设备上,当计算机确实要用他们时再移入内存,因为从内存读取比从存储设备读取要快得多。

1.3.1 CPU 能理解什么语言?机器语言1.3.2 什么是汇编语言?什么是汇编器?汇编语言(assembly language)就是使用短的描述性单词(助记符)来表示每一条机器语言指令。

由于计算机不理解汇编语言,所以需要使用一种称为汇编器(assembler)的程序将汇编语言程序转换为机器代码。

1.3.3 什么是高级编程语言?什么是源程序?高级编程语言类似于英语,易于学习和使用,高级语言中的指令称为语句。

java程序设计实训教程参考答案

java程序设计实训教程参考答案
public static void main(String[] args){
Graduate student1 = new Graduate();
student1.setName("zhang3");
student1.setScore(0, 78);
student1.setScore(1, 92);
(4)初始化、终止以及迭代部分都可以为空语句(分号不能省),三者均为空的时候,相当于一个无限循环,如果循环体中不包括break等语句,也没有可捕获的异常,那么将成为一个死循环,这在一般的程序设计中是应该能避免的。
(5)可以在for语句的初始化部分声明一个变量,它的作用域为整个for语句。
(6)在初始化部分和迭代部分可以使用逗号语句来进行多个操作。逗号语句是用逗号分隔的语句序列。
5.×6.×7.×8.√
二、选择题
1. A、B2. B、C、D
3. A、B4. D
5. C6. C
7. A8. A
三、填空题
1.顺序结构、选择结构、循环结构
2. for语句、while语句和do-while语句
3. if语句、switch语句

1.任何复杂的程序均可由三种控制结构表示,这三种结构是:顺序结构、选择结构和循环结构。
System.exit(0);
}
Vector sum = new Vector(A.getDimension());
for (int i = 0; i < A.getDimension(); i ++){
sum.element[i] = A.element[i] + B.element[i];
}
return sum;

Java程序设计教程 课后答案

Java程序设计教程 课后答案

Java程序设计教程第3版课后答案第一章填空题:1、Java源程序文件的扩展名是_java_;Java源程序经编译后生成Java字节码文件,其扩展名是_class_。

2、在Java语言中,将源代码翻译成_java字节码文件_时产生的错误称为编译错误,而将程序在运行中产生的错误称为运行错误。

3、一个Application源程序文件名为MyPro.java,如果使用Sun公司的Java开发工具SDK 编译该源程序文件并使用其虚拟机运行这个程序的字节码文件,应该顺序执行如下两个命令:_javac MyPro.java_、_java MyPro_。

4. 已知:int a =8,b=6; 则:表达式++a-b++的值为_3_。

5. 已知:boolean b1=true,b2; 则:表达式! b1 && b2 ||b2的值为_false_。

6. 表达式(18-4)/7+6的运算结果是_8_。

7、表达式5>2 && 8<8 && 23<36的运算结果是_false_。

思考题:1、源程序是什么?答:源程序文件的三要素:一、以package语句开始的包声明语句为可选,若有,只能有一个且必须是第一句,若没有,此文件将放到默认的当前目录下二、以import语句开始的类引入声明语句,数量可以是任意个三、class定义和interface定义中,由public开始的类定义只能有一个,且要求源程序文件名必须与public类名相同,Java语言对字符的大小写敏感2、编译的作用是什么?答:用Java语言编辑的源程序的执行方法是采用先经过编译器编译、再利用解释器解释的方式来运行的。

3、什么是Java的byte-codes,它的最大好处是什么?答:Java源程序经过编译器编译,会被转换成一种我们将它称之为“字节码(byte_codes)”的目标程序。

“字节码”的最大特点便是可以跨平台运行。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1章JAVA简介一、判断题1.√2.√3.⨯4.⨯5.⨯6.√7.√8.√9.⨯ 10.⨯二、填空题1.Application Applet2. 类(字节码文件、目标文件) .class3.对象4. 主5. J2SE J2EE J2ME三、选择题1.B2. D3.B4.B5. A四、简答题1.参考答案Java语言是简单的、面向对象的、分布式的、健壮的、安全的、体系结构中立的、可移植的、编译解释型的、高性能的、多线程的、动态的等等。

2.参考答案Java程序执行的具体过程如图1所示。

图1 Java程序的运行机制3.参考答案Java程序在计算机在执行要经历以下几个阶段:(1)使用文字编辑软件(例如记事本、写字板、UltraEdit等)或集成开发环境(JCreater、Eclipse、MyEclipse等)编辑Java源文件,其文件扩展名为.java。

(2)通过编译使.java的文件生成一个同名的.class文件。

(3)通过解释方式将.class的字节码文件转变为由0和1组成的二进制指令执行。

在以上阶段中可以看出Java程序的执行包括了编译和解释两种方式。

第2章Java 语法基础一、判断题1. ⨯2.√3. ⨯4.⨯5.⨯二、填空题1.102. 单精度双精度3. n%13 !=0?false:true4.接口5. false三、选择题1.D2. C3.D4.A5. C第3章程序流程控制一、判断题1.错误2.⨯3.⨯4.⨯5.√二、填空题1.循环2. if3.case switch4. while do-while5. continue三、选择题1.D2. C3.C4.B5. C第4章数组一、判断题1. ⨯2. √3. √4. √5.⨯二、填空题1.类型2. new3.长度4. 分配空间5. 3 6 9三、选择题1.D2. A3.C4.B5. B第5章类和对象一、判断题1.√2.√3.⨯4.⨯5.√6.⨯7.√8.⨯9.⨯ 10.√11.√ 12.√ 13.⨯ 14.⨯ 15. ⨯二、填空题1.public default2. class 属性方法3.public static void main(String args[]){}4. new5. 主6.实例实例类类7.public protected private8. 类类子类9.Myclass int j10.2111.99三、选择题1.C2. B3.A4.C5. C6.A7.A第6章类和对象的扩展一、判断题1.√2.√3.√4.√5.√6.√7. ⨯8.⨯二、填空题1.packageng3.this super4. 子类父类父类子类5. extends ng.object6. 抽象7.接口重用三、选择题1.C2. A3.C4.C5. C第7章Java常用系统类一、判断题1. ⨯2. ⨯3. ⨯4.⨯5.⨯6. ⨯7. ⨯8.√9. √ 10. √ 11. ⨯ 12.√ 13. ⨯ 14.⨯ 15.⨯二、填空题1.Object2.long int lvar=Math.pow(10,10)3.return Integer.parseInt(x*y);4. java.util5. 16. 12 -117.结果为:Boy8. true9. s1!=s210.hello world!11. no1 no2 no3no1 no312. true三、选择题1.C2.B3.A4.C5. D6.C第8章Java输入输出系统一、判断题1.√2. ⨯3.√4.√5.√6.√7. √8.⨯9.⨯二、填空题1. System.in System.out2. 24 03. 0 8 8三、选择题1.D2. D3.A4.B A5. B6.C7.A8.D四、简答题1.参考答案在计算机中,“流”的概念是1984年由C语言第一次引入。

“流”可以看作是一个流动的数据缓冲区。

数据从数据源流向数据目的地。

流在互联网上是串行传送。

最常见的数据源是键盘,最常见的数据目的地是屏幕。

数据流(stream)是一组有顺序的、有起点和终点的字节集合,是对输入和输出的总称和抽象。

Java程序可以打开一个从某数据源(例如键盘、文件等)到程序的一个流,从这个流中读取数据,这就是输入流。

同样,程序可以打开到外界某数据目的地的流,把数据顺序写到该流中,从而把程序中的数据送到外界,这就是输出流。

所有字节输入流的基类是InputStream。

抽象类OutputSteam是所有字节输出类的基类。

文件数据流类FilelnputStream 和FileOutputStream 用于进行文件的输入输出处理,其数据源和目的地都是文件。

Java 通过系统类System 实现标准输入输出的功能,定义了3 个流变量,分别为in、out 和err。

Reader类和Writer类是java.io包中两个字符流类的顶层抽象父类。

2.参考答案File类的构造方法主要有以下几种:(1)File(String path)(2)File(String dir, String filename)(3)File(File dir, String filename)(4)File(URL url)其中dir是文件所在的目录,filename是文件名,path是文件的路径名。

对文件进行顺序读/写可以利用FileReader 类和FileWriter 类。

FileReader 类是一个以字符方式读取文件内容的Reader 类的子类,最常用的构造方法如:FileReader ( File fileobj)。

FileWriter 类是一个以字符方式写文件内容的Writer类的子类,最常用的构造方法如:FileWriter ( File fileobj ) ,其中filePath 是文件的完全路径,fileobj 是说明该文件的File 对象。

Java 提供了一个功能很强大的随机存取文件类RandomAccessFile ,它可以实现对文件的随机读写操作。

RandomAccessFile 类提供两个构造方法:(1)public RandomAccessFile ( String name, String mode ) throws FileNotFoundException(2)public RandomAccessFile ( File file, String mode ) throws FileNotFoundException第9章GUI图形用户界面一、判断题1.√2.⨯3.⨯4.√5.⨯6.√二、填空题1.BorderLayout FlowLayout2.FlowLayout BorderLayout CardLayout GridLayout GridBogLayout BoxLayout3.注册监听者4. 事件源5. JFrame三、选择题1.D2.A3.B4.A5.D6.B7.C8.C9.D 10.D四、简答题1.参考答案java.awt包提供了基本的Java程序的GUI设计工具。

主要包括三个概念:组件(Component)、容器(Container)和布局管理器(Layout Manager)。

组件(Component)是Java的图形用户界面的最基本组成部分,组件是一个可以以图形化的方式显示在屏幕上并能与用户进行交互的对象。

容器(Container)也是一个类,实际上是Component的子类,因此容器本身也是一个组件,具有组件的所有性质,但是它的主要功能是容纳其他组件和容器。

每个容器都有一个布局管理器(Layout Manager),当容器需要对某个组件进行定位或判断其大小尺寸时,就会调用其对应的布局管理器。

2.参考答案使用Swing开发GUI程序需要7个步骤。

(1)引入swing包(2)选择"外观和感觉"(3)设置顶层容器(4)设置按钮和标签(5)向容器中添加组件(6)在组件周围添加边界(7)进行事件处理3.参考答案JFrame是与AWT中的Frame相对应的Swing组件。

JFrame上面只能有一个唯一的组件,这个组件为JRootPane,调用JFrame.getContentPane()方法可获得JFrame中内置的JRootPane对象。

面板(JPanel)是一个轻量级容器组件,是一种没有标题的中间容器,用于容纳界面元素,以便在布局管理器的设置下容纳更多的组件,实现容器的嵌套。

JPanel,JScrollPane, JSplitPane和JInternalFrame都属于常用的中间容器,是轻量级组件。

JPanel的默认布局管理器是FlowLayout。

这类容器不能独立存在,必须通过add()方法添加到一个顶层容器或存在于顶层容器的一个中间容器。

4.参考答案下拉列表框(JComboBox)与列表框相似,它同样是一个有许多选项的选择组件,但下拉列表框中所有选项都被折叠收藏起来,且只会将用户所选择的单个选项显示在显示栏上。

要改变被选中的选项,可以单击下拉列表框右边的向下箭头,然后从伸展开的选项框中选择一个选项即可。

下拉列表框JComboBox继承自JComponent类。

列表框组件JList向用户提供“多选多”的输入选择,列表框通常列出若干选项,可指定列出选项的数目,超过长度时被折叠起来。

列表框中提供了多个文本选项,可以浏览多项。

Java语言以JList类来创建列表框组件,JList类继承自JComponent类。

列表框组件的使用方式非常简单,先用JList类的add()方法将选项加入到列表框中,然后再利用程序来控制列表框的显示方式。

5.参考答案每个菜单项的作用与按钮相似,也是在单击时引发一个动作命令,所以整个菜单就是一组层次化组织、管理的命令集合,使用它用户可以方便地向程序发布命令。

它们的层次结构如图2所示。

图2 菜单的层次结构6.参考答案事件处理的特殊之处在于其操作的启动不是主动地掌握在程序流程中,而是由与程序交互的用户在使用程序时即兴决定的。

相应地,事件处理机制必须具有监听的功能,以便随时监测用户的动作。

要实现监听功能,必须有事先定义好的事件,并规定不同事件由什么事件源产生,有什么监听者处理。

事件源是可能产生事件的图形用户界面组件。

监听者定义了处理事件源所产生的事件的操作,把事件源注册给按事件类型匹配的监听者后,系统在监听到事件源产生的事件后自动调用监听者中定义的操作完成交互过程,这就是 Java 的事件处理机制。

把事件源注册给监听者,让监听者处理事件,称为委托事件模型。

能够产生事件的就时间源,实现了处理事件的接口的就是监听者。

在 Java 图形用户界面中,事件源通常是各种控制组件,监听者通常是各种容器相关。

相关文档
最新文档