java语⾔程序设计梁勇版课后习题答案
第⼀章:计算机、程序和JAVA概述
1.2.1 什么是硬件和软件?
答:硬件指计算机中可见的物理部分;⽽软件提供不可见的指令,这些指令控制硬件并使硬件完成特定的任务。
1.2.2 列举计算机的5个主要硬件组件。
答:中央处理器(CPU);内存(主存);存储设备(磁盘、光盘);输⼊设备(⿏标、键盘);输出设备(显⽰器、打印机 );通信设备(调制解调器、⽹卡)。
1.2.3 编写“CPU”代表什么含义?测量CPU速度的单位是什么?
答:CPU(Central Processing Unit)中央处理单元,包括控制单元和算术/逻辑单元;单位是HZ,现在通常以MHZ,GHZ数量级衡量。
1.2.4 什么是⽐特?什么是字节?
答:bit是计算机物理设备中存储的最⼩单位;8个bit为1个byte。
1.2.5 内存是⽤来做什么的?RAM代表什么?为什么内存成为RAM?
答:内存⽤来存储程序和数据;RAM(Random-Access Memory)-可随机访问存储介质;因为内存可以按任意顺序存取字节所以被称为
RAM(按功能划分)。
1.2.6 ⽤于测量内存⼤⼩的单位是什么?⽤于测量磁盘⼤⼩的单位是什么?
答:GB,TB
1.2.7 内存和永久存储设备的主要不同是什么?
答:内存是易失性存储介质(断电即失),存储容量⼩,传输速度快;永久存储设备为⾮易失性存储介质(断电可留),存储容量⼤,传输速度慢。
1.3.1 CPU能理解什么语⾔。
机器语⾔。
1.3.2 什么是汇编语⾔?什么是汇编器?
汇编语⾔能⽤短的描述性单词来表⽰每⼀条机器语⾔指令,是⼀种低级语⾔。
汇编器可以将汇编语⾔转换成机器语⾔。
1.3.3 什么是⾼级编程语⾔?什么是源程序?
很像英语,易于学习和使⽤的编程语⾔称为⾼级编程语⾔。
使⽤⾼级编程语⾔编写的程序称为源程序。
1.3.4 什么是解释器?什么是编译器?
解释器会逐条读取源代码中的语⾔,并⽴刻翻译成机器代码或者虚拟机器代码,然后⽴刻运⾏。
编译器是先将整个源代码翻译为机器代码⽂件,然后再执⾏该机器代码⽂件。
1.3.5 解释语⾔和编译语⾔之间的区别是什么?
解释语⾔是在运⾏的时候将程序翻译成机器语⾔,效率⽐较低,但是跨平台性好,⽐如java和python。
编译语⾔在程序执⾏之前,有⼀个单独的编译过程,将程序翻译成机器语⾔就不再进⾏翻译了,效率⾼,⽐如C和C++。
1.4.1 什么是操作系统?列出⼀些流⾏的操作系统。
操作系统(Operating System, OS)是运⾏在计算机上最重要的程序,它可以管理和控制计算机的活动。
⽐较流⾏的有windows,linux,macos
1.4.2 操作系统的主要任务是什么?
控制和监控系统的活动
分配和调配系统资源
调度操作
1.4.3 什么是多道程序设计、多线程以及多处理。
多道程序设计允许多个程序通过共享CPU同时运⾏
多线程运⾏单个程序同时执⾏多个任务
多处理(多进程)也成为并⾏处理(parallel processing),是指使⽤两个或多个处理器共同并⾏执⾏⼦任务,然后将⼦任务的结果合并以得到整个任务的结果。
1.5.1 Java是由谁发明的?哪个公司现在拥有Java?
Java是由James Grosling在Sun公司领导的⼩组开发的。
Oracle拥有Java。
1.5.2 什么是Java applet?
能在Web浏览器中运⾏的Java程序称为Java applet。
1.5.3 安卓使⽤的是什么编程语⾔?
java,kotlin
1.6.1 什么是Java语⾔规范?
Java语⾔规范(Java language specification)是对语⾔的技术定义,包括Java程序设计语⾔的语法和语义。
1.6.2 JDK代表什么?JRE代表什么?
Java开发⼯具包(Java Development Toolkit),是由⼀套独⽴程序构成的集合,每个程序都是从命令⾏调⽤的,⽤于开发和测试java程序。
JRE(java Runtime Environment),运⾏Java的程序。
1.6.3 IDE代表什么?
集成开发环境(Integrated Development Environment)。
1.6.4诸如NetBeans和Eclipse的⼯具是和Java是不同的语⾔吗?或者它们是Java的⽅⾔或者扩充?
不是
这些是⽅便进⾏java开发的开发⼯具,IDE。
1.7.1 什么是关键字?列举⼀些java关键字。
java本⾝有特殊含义的单词,不能再程序中⽤于其他⽬的。
class, static, void
1.7.2 java是⼤⼩写敏感的吗?java关键字是⼤写还是⼩写?
⼤⼩写敏感
⼩写
1.7.3 什么是注释? 编译器会忽略注释吗?如何标识⼀⾏注释以及⼀段注释?主要⽤于说明程序是⼲什么的
会忽略
// 以及 /* */
1.7.4 在控制台显⽰⼀个字符串的语句是什么?
System.out.println()
1.7.5 给出以下代码的输出
public class Test {
public static void main(String[] args) {
System.out.println("3.5 * 4 / 2 - 2.5 is ");
System.out.println(3.5 * 4 / 2 - 2.5);
}
}
输出:
3.5 * 4 / 2 - 2.5 is
4.5
1.8.1 什么是java源程序的⽂件扩展名,什么是java字节码⽂件后缀?
.java
.class
1.8.2 java编译器的输⼊和输出是什么?
源代码
字节码
1.8.3 编译java程序的命令是什么?
javac ****.java
1.8.4 运⾏java程序的命令是什么?
java ****
1.8.5 什么是JVM?
java虚拟机,可以解释java字节码的程序
1.8.6 java可以运⾏在任何机器上吗?在⼀台计算机上运⾏java需要什么?
可以,只要装有java虚拟机
需要java虚拟机
1.8.7 如果运⾏程序的时候出现NoClassDefFoundError错误,是什么原因导致了这个错误?
运⾏⼀个不存在的类⽂件
1.8.8 如果运⾏程序的时候出现NoSuchMethodError错误,是什么原因导致了这个错误?
没有main⽅法或者敲错了main⽅法
1.10.1 什么是语法错误(编译错误)、运⾏时错误以及逻辑错误?
在编译过程中出现的错误称为语法错误(syntax error)或编译错误(compile error)。
引起程序⾮正常中断的错误叫运⾏时错误(runtime error)。
当程序没有按预期的⽅式执⾏时就会产⽣逻辑错误(logic error)。
1.10.2 给出语法错误、运⾏时错误以及逻辑错误的⽰例。
少关键字
1除以0的场景
⼩数点计算中给的都是整形数字导致计算结果不正确
1.10.3 如果忘记为字符串加引号了,将产⽣哪类错误?
语法错误
1.10.4 如果程序需要读取整数,⽽⽤户输⼊了字符串,运⾏该程序的时候将产⽣什么错误?这是哪类错误?数据类型错误。
运⾏时错误。
1.10.5 假设编写⼀个计算矩形周长的程序,但是错误地写成了计算矩形⾯积的程序。这属于哪类错误?
逻辑错误。
编程练习题
分为容易(没有星号)、适中(⼀颗星)、难(两颗星)以及具有挑战性(三颗星)
1.1 (显⽰三条消息)编写程序,显⽰Welcome to Java、Welcome to Computer Science 和 Program
ming is fun。package com.levelksk.aining;
public class Training1_1 {
public static void main(String[] args) {
System.out.println(“Welcome to Java”);
System.out.println(“Welcome to Computer Science”);
System.out.println(“Programming is fun”);
}
}
1.2 (显⽰五条信息)编写程序,显⽰Welcome to Java 五次。
package com.levelksk.aining;
public class Training1_2 {
public static void main(String[] args) {
System.out.println(“Welcome to Java”);
System.out.println(“Welcome to Java”);
System.out.println(“Welcome to Java”);
System.out.println(“Welcome to Java”);
System.out.println(“Welcome to Java”);
}
}
*1.3 (显⽰图案)编写⼀个程序,显⽰下⾯的图案:
J A V V A
J A A V V A A
J J AAAAA V V AAAAA
J J A A V A A
package com.levelksk.aining;
编程语言翻译public class Training1_3 {
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论