尚硅谷第一天测试错题总结
题目2: Dos命令中删除文件的命令是:
A、exit B、rd C、del D、delete
【参考答案】: C 【您的答案】: B
相应知识点:
DOS命令和Linux命令的区别主要体现在使用语法和命令功能上。
DOS命令:
- 使用的是批处理命令,可以执行一条或多条命令的批处理脚本。
- 命令的参数和选项通常使用"/"开头。
- 文件路径使用反斜线""作为分隔符。
- 命令的输出结果通常是英文字符。
一些常用的DOS命令:
- cd:改变当前目录。
- dir:显示当前目录中的文件和子目录。
- copy:复制文件或目录。
- del:删除文件。
- ren:重命名文件。
- cls:清屏。
- ping:测试网络连接。
- ipconfig:显示网络配置信息。
- shutdown:关闭或重启计算机。
Linux命令:
- 使用的是Shell命令,可以直接在命令行中输入和执行。
- 命令的参数和选项通常使用"-"开头。
- 文件路径使用正斜线"/"作为分隔符。
- 命令的输出结果通常是文本格式。
一些常用的Linux命令:
- cd:改变当前目录。
- ls:列出当前目录中的文件和子目录。
- cp:复制文件或目录。
- rm:删除文件或目录。
- mv:移动或重命名文件。
- clear:清屏。
- ping:测试网络连接。
- ifconfig:显示网络配置信息。
- shutdown:关闭或重启计算机。
以上是一些常用的命令,在实际使用中根据不同的操作系统和需求可能会有一些差异。
题目6: 阅读以下代码输出结果正确的是:public static void main(String[] args ){
for( ; ; ){
System.out.println(“hello world”);
break;
}}A、编译错误 B、运行错误 C、无输出 D、hello world
【参考答案】: D 【您的答案】: A
这道题单纯是对于代码不够熟悉,没啥好讲的知识点。for( ; ; ) 等价于while(true)循环,里面有break,遇到后直接退出,故代码打印1行hello world结束。
题目8: 下列关于JDK,JRE和JVM关系的描述中,正确的是:
A、JDK中包含了JRE,JVM中包含了JRE
B、JRE中包含了JDK,JDK中包含了JVM
C、JRE中包含了JDK,JVM中包含了JRE
D、JDK中包含了JRE,JRE中包含了JVM
【参考答案】: D 【您的答案】: A
相关知识点:JDK (Java Development Kit) 是用于开发Java应用程序的软件开发工具包,包括编译器、调试器和其他开发工具。
JRE (Java Runtime Environment) 是Java应用程序的运行环境,用于运行已经编译好的Java程序。它包含了Java虚拟机(JVM)和一些运行时库。
JVM (Java Virtual Machine) 是Java语言的虚拟机,它负责解释和执行Java字节码,提供了一个运行Java程序的环境。
因此,JDK包含了JRE和JVM。在开发Java应用程序时,需要使用JDK进行编译和调试,而在运行Java程序时,只需要安装JRE即可。JVM则是在JRE中运行Java程序的核心组件。
题目14: 下列符号中,不属于Java整数常量的是()
A、-82
B、091
C、0x88
D、88
【参考答案】: B 【您的答案】: C
相关知识点:整型常量值
Java 的整型常量值主要有如下 3 种形式。
- 十进制数形式:如 54、-67、0。
- 八进制数形式:Java 中的八进制常数的表示以 0 开头,如 0125 表示十进制数 85,-013 表示十进制数 -11。
- 十六进制数形式:Java 中的十六进制常数的表示以 0x 或 0X 开头,如 0x100 表示十进制数 256,-0x16 表示十进制数
-22。
其中B选项看起来像8进制数形式,但是出现了数字9, 超过了八进制的表示范围。
题目15: 下面那个语句(初始化数组)是不正确的:
A、int x[] ={1,2,3}; B、int x[3] ={1,2,3}; C、int[] x={1,2,3}; D、int x[]
=new int[]{1,2,3};
【参考答案】: B 【您的答案】: D
相关知识点:
一. 数组的声明方式
type[] arrayName
type arrayName[]
推荐使用第一种格式,具有更好的可读性,表示type[] 是一种引用类型(数组)而不是type类型
Java语言中声明数组时不能指定其长度(数组中元素的个数),这是因为数组是一种引用类型的变量,,因此使用它定义一个变量时,仅仅表示定义了一个引用变量(也就是定一个了一个指针),这个引用变量还未指向任何有效的内存,所以定义数组时不能指定数组的长度。而且由于定义数组仅仅只是定一个引用变量,并未指向任何有效的内存空间,所以还没有内存空间来存储数组元素,因此这个数组也不能使用,只有在数组进行初始化后才可以使用。
二. 数组的初始化
通过两种方式可对数组进行初始化,即静态初始化和动态初始化。
- 静态初始化
静态初始化是指由程序员在初始化数组时为数组每个元素赋值,由系统决定数组的长度。
数组的静态初始化有两种方式,具体示例如下:
array = new int[ ]{1,2,3,4,5};
int[ ] array = {1,2,3,4,5};
上面的2种方式都可以实现数组的静态初始化,其中花括号包含数组元素值,元素值之间用逗号“,”分隔。此处注意只有在定义数组的同时执行数组初始化才支持使用简化的静态初始化。为了简便,建议采用第二种方式。
- 动态初始化
动态初始化是指由程序员在初始化数组时指定数组的长度,由系统为数组元素分配初始值。
数组动态初始化,具体示例如下:
int[ ] array = new int[10]; // 动态初始化数组
B选项错误原因,动态和静态不能同时声明。左边的int x[3]是静态声明一个长度为3的数组, 右边{1, 2, 3} 是动态声明一个长度为3的数组,两个合在一起使用的话,java虚拟机不允许这样的操作。而且在右边的动态声明时已经明确了数组的长度,无需在左边加上长度。
题目19: 下列哪些答案与show构成方法重载();class Demo{ void show(int a ,int b,float
c){ }}A、void show(int a ,float c,int b)
B、void show(int x ,int y,float z)
C、void show(int a ,float c,double b)
D、void show(int a ,float c)
【参考答案】: ACD 【您的答案】: B
出错原因:将方法重载和方法重写搞混了。
知识点:
方法重写:方法名和参数列表都不变,改变方法体
方法重载:方法名不变,参数列表不同,方法体不做要求。
题目21: 下面数组定义正确的是?()
A、int arr[]=new int[3];
B、int arr[]=new int[3][1,2,3];
C、int [][]x=new int[][];
D、int [][] x=new int[2][]
【参考答案】: AD 【您的答案】: AB
解析:B选项单纯没看清楚题目,D选项说明java中声明二维数组时,列数可以省略。这个情况等价于声明了一个长度为2的引用变量数组。
题目22: 在java中,下列哪些语句可以通过编译
A、String s =“join” + “was” + “here”
B、String s="join "+3
C、int a =3+5
D、float f=5+5.5
【参考答案】: ABC 【您的答案】: ACD
解析:B选项:基本数据类型和String相加结果一定是字符串型。D选项:5 + 5.5是Double类型,所以不能存放在float类型中,需要做强制类型转换。
题目23: 下面哪些声明式合法的?
A、long i=4990
B、int i=4L
C、float f=1.1
D、double d=34.3
【参考答案】: AD
【您的答案】: CD
解析:A选项,long类型数据末尾要加L(不必须) java整型默认为int,且java会自动向上转型,byte和short都可以由int自动向上转型,但是long类型的不能自动向上转型,所以要加L,转为long类型。 C选项,1.1后面必须加f才行,否则1.1在编译时默认是double类型。
题目24: 变量命名不规范的有哪些
A、name
B、double
C、age
D、UserDo
【参考答案】: BD 【您的答案】: B
知识点:
Java变量命名规范具体有以下几点:
- 变量名必须以字母、下划线或美元符号开头,后面可以跟字母、数字、下划线或美元符号。
- 变量名不能以数字开头。
- 变量名不能是Java关键字或保留字。
- 变量名应该具有描述性,能够清楚地表达变量所表示的含义。
- 变量名应该尽量简洁明了,不要过长。
- 变量名区分大小写,因此大小写敏感。
- 类名使用大写字母开头的驼峰命名法(首字母大写,后续单词首字母也大写)。
- 方法名、变量名使用小写字母开头的驼峰命名法(首字母小写,后续单词首字母大写)。
- 常量名使用全大写的下划线分隔命名法,每个单词用下划线连接。
- 尽量避免使用单个字符作为变量名,除非是在循环中的计数器或临时变量。
- 在命名中要注意避免使用类似l(小写字母L)和O(大写字母O)这样的容易混淆的字符。
- 尽量不要使用拼音或其他非英文字符作为变量名,要使用英文单词或常用的英文缩写。
- 若是类成员变量,可以在变量名前加上下划线,如"_variable"。
这些规范有助于提高代码的可读性和可维护性,并与其他程序员保持一致的命名风格。
解析:D选项,UserDo是变量名,首字母应该小写,不够规范。