《Java基础入门》_课后习题答案

合集下载

Java基础入门_课后题答案_stu

Java基础入门_课后题答案_stu

《Java基础入门》习题答案第1章 Java开发入门一、填空题1、Java EE、Java SE、Java ME2、JRE3、javac4、bin5、path、classpath二、选择题1、ABCD2、C3、D4、B5、B三、简答题1、面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。

2、JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运行时所需要的基本条件和许多Java基础类,例如,IO类、GUI控件类、网络类等。

JRE是提供给普通用户使用的,如果你只想运行别人开发好的Java程序,那么,你的计算机上必须且只需安装JRE。

JDK(Java Development Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java开发人员使用的。

初学者学习和使用Java语言时,首先必须下载和安装JDK。

JDK中已经包含了JRE部分,初学者安装JDK后不必再去下载和安装JRE了。

四、编程题public class HelloWorld {public static void main(String[] args) {System.out.println("这是第一个Java程序!");}}第2章 Java编程基础一、填空题1、 class2、 true和false3、单行注释、多行注释、文档注释4、基本数据类型、引用数据类型5、 1、2、4、86、 & && | ||7、 08、 59、 3410、56二、判断题1、错2、对3、错4、对5、错三、选择题1、AD2、AD3、C4、ABCD5、C 6 、A 7、AC 8、A 9、B 10、A四、程序分析题1、编译不通过。

int值4和b相加时,由于变量b的类型为byte,取值范围没有int类型大,存不下int类型的值,因此编译不通过。

Java基础入门习题答案

Java基础入门习题答案

Java基础入门习题答案《Java基础入门》习题答案第1章Java开发入门一、填空题1、Java EE、Java SE、Java ME2、JRE3、javac4、bin5、path、classpath二、选择题1、ABCD2、C3、D4、B5、B三、简答题1、面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。

2、JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运行时所需要的基本条件和许多Java基础类,例如,IO类、GUI控件类、网络类等。

JRE是提供给普通用户使用的,如果你只想运行别人开发好的Java程序,那么,你的计算机上必须且只需安装JRE。

float单精度浮点型,占4个字节。

double双精度浮点型,占8个字节。

char字符型,占两个字节。

boolean型,表示逻辑值,有true和false两个值,分别占一个字节。

2、如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边的表达式都会参与计算。

如果使用“&&”进行连接,当“&&”左边的表达式为false,则不会执行其右边的表达式。

例如定义int x = 2,y = 0; boolean b = x < y & x /2 > 0表达是会发生被0除异常,因为x / y的表达式执行了。

而boolean b = x < y & x / 2 > 0是不会出现这种异常的,因为x < y为false,表达式x / y不会执行。

3、方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致。

调用这些同名的方法时,JVM会根据实际参数的不同绑定到不同的方法。

六、编程题1、参考答案public class Test01 {public static void main(String[] args) {int sum = 0;for (int i = 1; i < 100; i++) {if (i % 2 != 0)sum += i;}System.out.println(sum);}}2、参考答案public class Test02 {public static void main(String args[]) {int y = function(0);System.out.println(y);}public static int function(int x) {int y;if (x > 0) {y = x + 3;} else if (x == 0) {y = 0;} else {y = x * x - 1;}return y;}}3、参考答案public class Test03 {public static void main(String[] args) {int[] arr = { 25, 24, 12, 76, 101, 96, 28 };for (int i = 0; i < arr.length - 1; i++) {// 定义内层循环for (int j = 0; j < arr.length - i - 1; j++) {if (arr[j] > arr[j + 1]) { // 比较相邻元素// 下面的三行代码用于交换两个元素int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}for (int i = 0; i < arr.length; i++) {System.out.print(arr[i] + " "); // 打印元素和空格}}}第2章面向对象(上)一、填空题1、封装、继承、多态2、new3、成员变量、局部变量4、类、类5、this6、finalize()7、静态变量8、内部类9、javadoc10、private二、判断题1、对2、对3、错4、对5、错三、选择题1、B2、D3、B4、ABC5、ABCD6、ACD7、ABCD 8、ABCD 9、D 10、D四、程序分析题1、程序不能编译通过,因为在类A中的成员变量secret用private修饰,所以在类Test1中无法访问。

《Java基础入门》_课后习题答案大一计算机专业7

《Java基础入门》_课后习题答案大一计算机专业7

《Java基础入门》课后习题答案第7章IO(输入输出)一、填空题1、Java中的I/O流,按照传输数据不同,可分为:字节流、字符流2.在Buffer与Channel交互时,数据从:Channel、读取到Buffer 中,或从Buffer入到Channel 中。

3.用于将字节流转换为字符流的是:InputStreamReader、OutputStreamWriter2、NIO主要有三大核心部分:Buffer、Channel、Selector5、Java中提供了一个类:RandomAccesseFile,它不但具有读写文件的功能,而且可以随机地从文件的任何位置开始执行读写数据的操作。

二、判断题1. 如果一个File表示目录下有文件或者子目录,调用delete()方法也可以将其删除。

错2.对象序列化是指将一个Java 对象转换成一个I/0 流中字节序列的过程。

对3.Channel 是一个接口对象,它类似于传统的流对象。

对4.InputStream类的close()方法是用于关闭流并且释放流所占的系统资源。

对5,BufferedInputStream 和BufferedOutputStream 不是字节缓冲流。

错三、选择题1.下面选项中,哪些是标准输人输出流?(多选) (AB)A. System.InB.System. OutC.InputStreamD.OutputStream2.File类中以字符串形式返回文件绝对路径的方法是哪一项?(C)A. getParent()B. getNamel)C. getAbsolutePathOD. getPath()3.以下创建RandomAccessFile类实例对象的代码,哪些是正确的?(多选)(AB)A.new RandomAccessFile(new File("D:\\itcast\\dirl\test. java"),”rw”);B.new RandomAccessFile("D:\\itcast\\dirl\test. java","r");C. new RandomAccessFile("D:\\itcast\\dir1\\test.java");D. new RandomAccessFile("D:\\itcast\\dir1\\test.java","wr")4.以下选项中,哪个流中使用了缓冲区技术? (A)A. BufferedOutputStreamB. FileInputStreamC. DataOutputStreamD. FileReader5.以下选项中,关于Java NIO 中Buffer类的常用说法正确的是哪一项?(B)A.clearO方法会清除缓冲区数据,并将position 设置为0.limit 设置为capacity OB.fip()方法先将limit 设置为当前position 位置,然后再将pson设置为0C.mark()方法用于设置Buffer 的标记(mark),其能在0 与limi 之间做标记D.rewind()方法将position 设置为0,并设置mark 标记四、简答题1、简述I/O 流的概念。

传智播客-Java基础入门习题答案

传智播客-Java基础入门习题答案

Java 基础入门》习题答案第1章Java 开发入门一、填空题1、Java EE、Java SE、Java ME 2、JRE 3、javac 4、bin 5、path、classpath 二、选择题1、ABCD 2、C 3、D4、B5、B 三、简答题1、面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。

2、JRE(Java Runtime Environment,Java 运行时环境),它相当于操作系统部分,提供了Java 程序运行时所需要的基本条件和许多Java 基础类,例如,IO 类、GUI 控件类、网络类等。

JRE 是提供给普通用户使用的,如果你只想运行别人开发好的Java 程序,那么,你的计算机上必须且只需安装JRE。

JDK(Java Development Kit,Java 开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java 开发人员使用的。

初学者学习和使用Java 语言时,首先必须下载和安装JDK。

JDK 中已经包含了JRE 部分,初学者安装JDK 后不必再去下载和安装JRE 了。

四、编程题public class HelloWorld { public static void main(String[] args) { System.out.println("这是第一个Java 程序!"); } }第2章Java 编程基础一、填空题1、class 2、true 和false 3、单行注释、多行注释、文档注释4、基本数据类型、引用数据类型5、1、2、4、8 6、&&& | || 7、0 8、59、34 10、56 二、判断题1、错2、对3、错4、对5、错三、选择题1、AD 2、AD 3、C 4、ABCD 5、C 6 、A 7、AC 8、A 9、B 10、A 四、程序分析题1、编译不通过。

Java基础入门第三版课后习题答案

Java基础入门第三版课后习题答案

第1章Java开发入门一、1.对象2.面向对象、跨平台性3.javac4.Java虚拟机(或JVM)5.JRE二、1.错2.错3.错4.对5.对三、1.C2.ABCD3.D4.ABCD5.D四、1.简答性、面向对象、安全性、跨平台性、支持多线程、分布性。

2. Java程序运行时,必须经过编译和运行两个步骤。

首先将后缀名为.java的源文件进行编译,生成后缀名为.class的字节码文件,然后Java虚拟机将字节码文件进行解释执行,并将结果显示出来。

五、HelloWorld.java1 public class HelloWorld {2 public static void main(String[] args) {3 System.out.println("这是第一个Java程序!");4 }5 }第2章Java编程基础一、1.class2.单行注释、多行注释、文档注释3.44.==5.容器、0二、1.对2.错3.对4.错5.对三、1.AC2.A3.BD4.C5.C四、1.Java语言的八种基本数据类型有:byte字节型,占一个字节。

short短整型,占两个字节。

int整型,占4个字节。

long长整型,占8个字节。

float单精度浮点型,占4个字节。

double 双精度浮点型,占8个字节。

char字符型,占两个字节。

boolean型,表示逻辑值,有true 和false两个值,分别占一个字节。

2. 在switch条件语句和循环语句中都可以使用break语句。

当它出现在switch条件语句中时,作用是终止某个case并跳出switch结构。

当它出现在循环语句中,作用是跳出循环语句,执行循环后面的代码;continue语句用在循环语句中,它的作用是终止本次循环,执行下一次循环。

五、1.1public class getSum {2public static void main(String[] args) {3int sum = 0;4for (int i = 1; i < 100; i++) {5if (i % 2 != 0)6sum += i;7}8System.out.println(sum);9}10}2.1public class Test {2 public static void main(String[] args) {3 int i = 1;4 long sum = 1;5 do {6 sum *= i;7 i++;8 } while (i <= 5);9 System.out.println(sum);10 }11}第3章面向对象(上)一、1.封装、继承、多态2.private、default、protected、public3.static4.private5.参数类型参数个数6.this二、1.对2.对3.错4.对5.对三、1.C2.B3.D4.B5.C四、1.面向对象的特点主要可以概括为封装性、继承性和多态性。

Java基础入门_课后题答案_仅供参考

Java基础入门_课后题答案_仅供参考

黑马面试题1:定义map集合,并自定义对象,对map集合遍历,打出key和value值【已完成】2:定义一个类A,类中定义一个show方法,打印一句话,在定义一个TestA类,利用反射在TestA中创建A的对象,并调用show方法3:使用高效字符缓冲流复制文件4:把C盘中的一个多层文件夹拷贝到D盘中。

用高效的方法(要求写思路,注释,代码)5:Integer泛型Map中存储字符串6:开启两个线程每隔一段时间分别向一个共享数组中添加元素,每个线程添加3个即可。

7:Map的两种遍历方式【已完成】8:如何用反射去创建一个对象,有2种方式,尽量用代码去体现9:编写一个程序,把这个目录里边的所有的带.java文件都拷贝到另一个目录里边,拷贝成功以后,把后缀名是.java改成.txt10:创建多线程的方式有几种?尽量用代码去体现11:编写一个类,在main方法中定义一个Map对象(采用泛型),加入若干个对象,然后遍历并打印出各元素的key和value。

【已完成】12:编写程序,生成5个1至10之间的随机整数,存入一个List集合,编写方法对List 集合进行排序(自定义排序算法,禁用Collections.sort方法和TreeSet),然后遍历集合输出【已完成】14:Collection集合下班有哪些类,哪些类又有哪些特点ListSet15: 求1000!的结果中包含多少个0?注:1000! = 1×2×3×4×5×...×999×100016:编写一个类,增加一个实例方法用于打印一条字符串。

并使用反射手段创建该类的对象,并调用该对象中的方法。

17:编写一个类A,增加一个实力方法showString,用于打印一条字符串,在编写一个类TestA ,作为客户端,用键盘输入一个字符串,改字符串就是类A的全名,使用反射机制创建该类的对象,并调用该对象中的方法showString18:复制多级文件夹19:写一个线程类MyThread,该线程实现了Runnable接口,写一个main方法,用for循环创建5个线程对象。

《Java基础入门》_课后习题答案大一计算机专业9

《Java基础入门》_课后习题答案大一计算机专业9

《Java基础入门》课后习题答案第9章JDBC一、填空题1、Java Database Connectivity2、java.sql.*3、classpath4、registerDriver()5、next()二、判断题1、对2、错3、对4、错5、错三、选择题1、A2、C3、A4、D5、AC四、简答题1、JDBC是一套用于执行SQL语句的Java API。

应用程序可通过这套API连接到关系型数据库,并使用SQL语句来完成对数据库中数据的查询、新增、更新和删除等操作。

2、(1)加载数据库驱动(2)通过DriverManager获取数据库连接(3)通过Connection对象获取Statement对象(4)使用Statement执行SQL语句(5)操作ResultSet结果集(6)关闭连接,释放资源3、(1)代码的可读性和可维护性(2)PreparedStatement尽最大可能提高性能,因为预编译语句有可能被重复调用,所以语句在被DB 的编译器编译后的执行代码被缓存下来,那么下次调用时只要是相同的预编译语句就不需要编译,只要将参数直接传入编译过的语句执行代码中(相当于一个函数)就会得到执行。

(3)极大地提高了安全性传。

递给PreparedStatement对象的参数可以被强制进行类型转换,使开发人员可以确保在插入或查询数据时与底层的数据库格式匹配;在公共Web站点环境下,防止Sq注入问题。

五、编程题1、参考答案public static void main(String[] args) throws Exception {// int i = insert();// int i = delete();// int i = update();select();// System.out.println(i);}// 获取连接对象private static Connection getConn() {String driver = "com.mysql.jdbc.Driver";String url = "jdbc:mysql://localhost:3306/javatest";String username = "root";String password = "1234";Connection conn = null;try {Class.forName(driver); // classLoader,加载对应驱动conn = DriverManager.getConnection(url, username, password);} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}return conn;}// 插入操作private static int insert() {Connection conn = getConn();int i = 0;String sql = "insert into tb_user(name,sex,email,birthday) values(?,?,?,?)";PreparedStatement pstmt;try {pstmt = conn.prepareStatement(sql);pstmt.setString(1, "itcast");pstmt.setString(2, "男");pstmt.setString(3, "itcast@");pstmt.setString(4, "2000-01-01");i = pstmt.executeUpdate();pstmt.close();conn.close();} catch (SQLException e) {e.printStackTrace();}return i;}// 删除操作private static int delete() {Connection conn = getConn();int i = 0;String sql = "delete from tb_user where name=?";PreparedStatement pstmt;try {pstmt = conn.prepareStatement(sql);pstmt.setString(1, "itcast");i = pstmt.executeUpdate();} catch (Exception e) {e.printStackTrace();}return i;}// 更新操作private static int update() {Connection conn = getConn();int i = 0;String sql = "update tb_user set name=? where name =?";PreparedStatement pstmt;try {pstmt = conn.prepareStatement(sql);pstmt.setString(1, "itcast");pstmt.setString(2, "abc");i = pstmt.executeUpdate();System.out.println("resutl: " + i);pstmt.close();conn.close();} catch (SQLException e) {e.printStackTrace();}return i;}// 查询操作private static void select() {Connection conn = getConn();String sql = "select * from tb_user";PreparedStatement pstmt;try {pstmt = conn.prepareStatement(sql);ResultSet rs = pstmt.executeQuery();while (rs.next()) {int id = rs.getInt("id"); // 通过列名获取指定字段的值String name = rs.getString("name");String sex = rs.getString("sex");String email = rs.getString("email");Date birthday = rs.getDate("birthday");System.out.println(id + " | " + name + " | " + sex + " | " + email + " | " + birthday);}pstmt.close();conn.close();} catch (Exception e) {e.printStackTrace();}}2、参考答案import java.sql.*;public class Test {public static void main(String[] args) throws Exception {transferAccounts(2, 1, 100);}public static void transferAccounts(int fromid,int toid,int transferMoney) throwsException{ Class.forName("com.mysql.jdbc.Driver");String url = "jdbc:mysql://localhost:3306/jdbc";Connection con = DriverManager.getConnection(url,"root", "root");int fromMoney = getMoney(fromid);// 转出账户String sql = "update tb_count set money=? where id =?";PreparedStatement ps = con.prepareStatement(sql);ps.setInt(1, fromMoney-transferMoney);ps.setInt(2, fromid);// 转入账户int toMoney = getMoney(toid);String sql2 = "update tb_count set money=? where id =?";PreparedStatement ps2 = con.prepareStatement(sql2);ps2.setInt(1, toMoney+transferMoney);ps2.setInt(2, toid);ps.executeUpdate();ps2.executeUpdate();ps.close();ps2.close();con.close();}// 获取当前账户id的账户余额public static int getMoney(int id) throws Exception{Class.forName("com.mysql.jdbc.Driver");String url = "jdbc:mysql://localhost:3306/jdbc";Connection con = DriverManager.getConnection(url,"root", "root");String sql = "select money from tb_count where id =?";PreparedStatement ps = con.prepareStatement(sql);ps.setInt(1, id);ResultSet resultSet = ps.executeQuery();int money = 0;while(resultSet.next()){money = resultSet.getInt(1);}ps.close();con.close();return money;}}。

Java基础入门课后习题

Java基础入门课后习题

J a v a基础入门课后习题 The pony was revised in January 2021《Java基础入门》课后习题第1章 Java开发入门一、填空题1、Java的三大体系分别是_JavaSE_____、_JavaEE_____、_JavaME_____。

2、Java程序的运行环境简称之为JRE_____。

3、编译Java程序需要使用_javac_____命令。

4、和两个可执行程序存放在JDK安装目录的bin______目录下。

5、path______环境变量用来存储Java的编译和运行工具所在的路径,而_classpath_____环境变量则用来保存保存Java虚拟机要运行的“.class”文件路径。

二、选择题1、以下选项中,哪些属于JDK工具(多选)ABCDA、Java编译器B、Java运行工具C、Java文档生成工具D、Java打包工具2、Java属于以下哪种语言?CA、机器语言B、汇编语言C、高级语言D、以上都不对3、下面哪种类型的文件可以在Java虚拟机中运行?DA、.javaB、.jreC、.exeD、.class4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中命令的作用是以下哪一种?BA、Java文档制作工具B、Java解释器C、Java编译器D、Java启动器5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项?BA.d:\jdk;B.d:\jdk\bin;C.d:\jre\bin;D.d:\jre;三、问答题1、简述Java的特点。

2、简述JRE与JDK的区别。

四、编程题使用记事本编写一个HelloWorld程序,在dos命令行窗口编译运行。

请按照题目的要求编写程序并给出运行结果。

第2章 Java编程基础一、填空题1、Java中的程序代码都必须在一个类中定义,类使用__class____关键字来定义。

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

Java 编程基础
6、 & 7、 0 8、 5
9、 34 10、 56 二、判断题 1、 错 2、对 3、错 4、对 5、错 三、选择题 1、 AD 2、AD 3、C 4、ABCD 5、C 6 、A 7、AC 8、A 9、B 10、A 四、程序分析题 1、 编译不通过。int 值 4 和 b 相加时,由于变量 b 的类型为 byte,取值范围没有 int 类型大,存不下 int 类型的值,因此编译不通过。 2、 编译不通过。这是因为 y 是在最里层的代码块中定义的一个变量,只有在那个代码块中才可使用, 在使用 y = x;语句时已经超过了 y 变量的作用域,所以编译无法通过。 3、 打印结果为:3。 4、 打印结果为: 9 8 7 五、简答题 1、Java 语言的八种基本数据类型有:byte 字节型,占一个字节。short 短整型,占两个字节。int 整型, 占 4 个字节。long 长整型,占 8 个字节。float 单精度浮点型,占 4 个字节。double 双精度浮点型, 占 8 个字节。char 字符型,占两个字节。boolean 型,表示逻辑值,有 true 和 false 两个值,分别占 一个字节。 2、如果使用“&”在表达式之间进行连接,那么无论任何情况, “&”两边的表达式都会参与计算。 如果使用“&&”进行连接,当“&&”左边的表达式为 false,则不会执行其右边的表达式。例如 定义 int x = 2,y = 0; boolean b = x < y & x / 2 > 0 表达是会发生被 0 除异常, 因为 x / y 的表达式执行 了。而 boolean b = x < y & x / 2 > 0 是不会出现这种异常的,因为 x < y 为 false,表达式 x / y 不会 执行。 3、方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致。 调用这些同名的方法时,JVM 会根据实际参数的不同绑定到不同的方法。 六、编程题 1、参考答案
class Student { public String name; public int age; public Student(String name,int age){ =name; this.age=age; } public void show(){ System.out.println("name: "+name+" age: "+age); } } class UnderGraduate extends Student{ public String degree; public UnderGraduate(String name,int age,String degree){ super(name, age); this.degree=degree; } public void show(){ System.out.println("name: "+name+" age: "+age+" degree: "+degree); } } public class Test01{ public static void main(String[] args) { Student student = new Student("zhangsan", 16); student.show(); UnderGraduate underGraduate = new UnderGraduate("lisi", 20, "bechalor"); underGraduate.show(); }
3、参考答案
public class Test03 { public static void main(String[] args) { int[] arr = { 25, 24, 12, 76, 101, 96, 28 }; for (int i = 0; i < arr.length - 1; i++) { // 定义内层循环 for (int j = 0; j < arr.length - i - 1; j++) { if (arr[j] > arr[j + 1]) { // 比较相邻元素 // 下面的三行代码用于交换两个元素 int temp = arr[j]; arr[j + 1] = temp; } } } for (int i = 0; i < arr.length; i++) { } } } System.out.print(arr[i] + " "); // 打印元素和空格 arr[j] = arr[j + 1];
3、程序编译能通过,输出结果为“动物叫! ”和“汪汪……” ,因为在程序中调用shout()方法时,首先 会通过super.shout()调用父类的方法说出“动物叫! ”之后再输出“汪汪……” 4、程序编译不通过,因为接口中定义的方法不能有方法体,所以定义的 eat()方法是错误的。接口中 的方法必须在子类中全部实现,由于 run()方法在子类中并没有重新实现,所以这也是错误的。 五、简答题 1、在继承关系中,子类的方法与父类的某一方法具有相同的方法名、返回类型和参数列表,则称子 类的该方法重写(覆盖)父类的方法。 2、多态意味着一个对象有着多种形态,可以在特定的情况下,表现不同的状态,从而对应着不同的 属性和方法。简单的说,多态就是使用父类类型的变量引用子类对象,根据被引用子类对象的特 性,程序会得到不同的运行效果。 3、在 Java 中,使用 abstract 关键字修饰的类称之为抽象类。抽象类是不能被实例化的,通常需要写一 个子类来继承抽象类,同时实例化子类来获得该类的对象。抽象类通常用于表示一种抽象的概念。 接口可以说是一种特殊的抽象类,接口中只能定义常量和抽象方法。由于接口的特殊性,在定义 时需要使用 interface 关键字。 六、编程题 1、参考答案
《Java 基础入门》课后习题答案
第1章
一、填空题 1、 Java EE、Java SE、Java ME 2、 JRE 3、 javac 4、 bin 5、 path、classpath 二、选择题 1、ABCD 2、C 3、D 4、B 5、B 三、简答题 1、 面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。 2、 JRE(Java Runtime Environment,Java 运行时环境) ,它相当于操作系统部分,提供了 Java 程序运 行时所需要的基本条件和许多 Java 基础类,例如,IO 类、GUI 控件类、网络类等。JRE 是提供给 普通用户使用的,如果你只想运行别人开发好的 Java 程序,那么,你的计算机上必须且只需安装 JRE。 JDK(Java Development Kit,Java 开发工具包) ,它包含编译工具、解释工具、文档制作工具、打 包工具多种与开发相关的工具,是提供给 Java 开发人员使用的。初学者学习和使用 Java 语言时, 首先必须下载和安装 JDK。 JDK 中已经包含了 JRE 部分, 初学者安装 JDK 后不必再去下载和安装 JRE 了。 四、编程题
stu1.setName("zhangsanent stu2 = new Student("lisi", 100); } }
2、参考答案 class Father {
private String name = "zhangjun"; class Child { public void introFather() { System.out.println("My Father's name is " + name); } }
public class Test01 { public static void main(String[] args) { int sum = 0; for (int i = 1; i < 100; i++) { if (i % 2 != 0) sum += i; } System.out.println(sum); } }
} public class Test02 { public static void main(String[] args) { Father.Child child = new Father().new Child(); child.introFather(); }
}
第4章
面向对象(下)
一、填空题 1、继承 2、方法,抽象类 3、import 4、子类、父类、基类 5、Exception 6、final 7、super 8、Object 9、try、catch 10、jar –cvf,java –jar 二、判断题 1、错 2、对 3、错 4、对 5、对 三、选择题 1、B 2、C 3、ABC 4、 ABCD 5、C 6、AC 7、C 8、D 9、A 10、B 四、程序分析题 1、程序编译能通过,这是因为 int x = 2 / 0; System.out.println(x);这两条语句使用了 try 块,捕获了程序 因为除以 0 而产生的异常情况, 之后程序会继续向下执行, 输出 “进入 catch 代码块” , “进入 finally 代码块” 。 2、程序编译不通过,这是因为在程序中使用了 final 关键字修饰 Animal 类,使得 Animal 类不能被继 承。shout()方法中同样使用了 final 关键字,使得该方法不能被重写。
class Student { private String name; private double grade; public Student() { } public Student(String name, double grade) { = name; this.grade = grade; } public String getName() { return name; } public void setName(String name) { = name; } public double getGrade() { return grade; } public void setGrade(double grade) { this.grade = grade; } } public class Test01 { public static void main(String[] args) { Student stu1 = new Student();
相关文档
最新文档