JAVA期末复习2

目录

一、Java基础知识

1. 下面几个标识符中,哪些是命名正确的 (A)

2. 分析以下代码,哪些是合法的 (C)

3. 以下代码的执行结果是( B )

4. 下面哪个不是java中的关键字?( B )

5. 下面对数组 int[] a={1,7,8,9}; 的描述不正确的是( D )

6. 下列语句编译没有错误的是( C )

7. 数组a的第三个元素表示为(D)

8. Java中int数据类型在内存中表示为( B )

9. 下列程序段执行后t5的结果是( B )

10. 若有定义int a=2;则执行完语句(++a)+a结果为( A )

11. 下面正确的初始化语句是(C)

12. 请写出标识符的命名规则,哪个选项正确(A)

13. 以下代码执行后的输出结果是( B )

14. 当访问无效的数组下标时,会发生( B )

15. do while循环执行次数(D)

16. 若有定义 int a=1, b=2; 表达式 (a++)+(++b) 的值是( B )

17. double类型占几个字节?(D)

18. 下列哪一个不属于Java的基本数据类型(B)

八、变量与作用域

19. 判断引用中所存储的对象是否与某种类型兼容的关键字是 instanceof。

20. 静态属性(类属性)的关键字是 static。

21. 在 Java 中,类之间的继承的特点是单继承。

九、数组

22. 数组 a 的第三个元素表示为 (D)

23. 数组的索引从 0 开始,长度为 4,所以最大下标是 3。

十、编译与运行

24. Java 文件的编译扩展名是 .class,源文件扩展名是 .java。

25. 定义包的关键字为 package。

十一、其它

26. If 语句:

27. Java中的关键字:

28. float 数:

29. 标识符命名规则:


一、Java基础知识

1. 下面几个标识符中,哪些是命名正确的 (A)

  • 选项

    • A. ILoveJava
    • B. static
    • C. learn@java
    • D. 2tigers
  • 正确答案:A

  • 解析:

    • 标识符的命名规则:
      • 只能由字母、数字、下划线(_)和美元符号($)组成。
      • 第一个字符不能是数字。
      • 不能使用 Java 的关键字作为标识符。
    • 选项分析:
      • A. ILoveJava 符合命名规则。
      • B. static 是 Java 的关键字,不能作为标识符。
      • C. learn@java 包含非法字符 "@"。
      • D. 2tigers 第一个字符是数字,不符合规则。

2. 分析以下代码,哪些是合法的 (C)

  • 选项

    • A. while(int i=1;i<1;i++){}
    • B. for(int i=1;i++; i<10){}
    • C. int n=3;
    • D. int n=2;
      if(n%3==0){ if(n=2){}
      System.out.println("n="+n);
      }
  • 正确答案:C

  • 解析:

    • 选项分析:
      • A. while(int i=1;i<1;i++){} 错误,while循环的条件判断语句中不能进行变量的定义。
      • B. for(int i=1;i++; i<10){} 错误,for循环中的第二部分是更新变量,应该写成 "i++" 或 "i=i+1"。
      • C. int n=3; 合法,定义一个 int 型变量 n 并赋值为 3。
      • D. int n=2;
        if(n%3==0){
        System.out.println("n="+n);
        }
        错误,if(n=2){},if语句的判断条件应该是布尔值,而 "n=2" 是赋值语句,它返回值是 2,不是布尔值。

3. 以下代码的执行结果是( B )

  • 选项

boolean m = true;
if(m = false){
    System.out.println("false");
}else{
    System.out.println("true");
}

  • 正确答案:B(输出“true”)

  • 解析:

    • 代码中使用赋值语句 m = false 作为 if 语句的判断条件。在 Java 中,赋值运算符 "=" 的返回值是赋值的值,即 false。因此,if 语句判断条件为 false,所以进入 else 代码块,输出 "true"。

4. 下面哪个不是java中的关键字?( B )

  • 选项

    • A. public
    • B. STATIC
    • C. class
    • D. package
  • 正确答案:B

  • 解析:

    • Java 中的关键字是预留的词语,不能用作标识符。
    • 选项分析:
      • A. public 是 Java 的关键字,用来修饰类、方法和变量的访问权限。
      • B. STATIC 不是 Java 的关键字,应该写成 static。
      • C. class 是 Java 的关键字,用来定义类。
      • D. package 是 Java 的关键字,用来声明包。

5. 下面对数组 int[] a={1,7,8,9}; 的描述不正确的是( D )

  • 选项

    • A. 数组的下标是 从 0 开始
    • B. 数组的内存空间是连续的
    • C. 通过 a[2] 访问的结果 为 8
    • D. 数组 a 中的最大下标是 4
  • 正确答案:D

  • 解析:

    • 数组的索引从 0 开始,长度为 4,所以最大下标是 3。

6. 下列语句编译没有错误的是( C )

  • 选项

    • A. float a=1.5;
    • B. byte b=129;
    • C. byte c=5;
    • D. byte d=-200;
  • 正确答案:C

  • 解析:

    • 选项分析:
      • A. float a=1.5; 错误,float 类型不能直接赋值 double 类型的值,需要强转。
      • B. byte b=129; 错误,byte 类型只能存储 -128 ~ 127 之间的整数,129 超出了范围。
      • C. byte c=5; 正确,5 在 byte 类型范围内。
      • D. byte d=-200; 错误,-200 超出了 byte 类型范围。

7. 数组a的第三个元素表示为(D)

  • 选项

    • A. a(3)
    • B. a[3]
    • C. a(2)
    • D. a[2]
  • 正确答案:D

  • 解析:

    • 数组的元素访问使用方括号 [],例如 a[2] 表示数组 a 的第三个元素。

8. Java中int数据类型在内存中表示为( B )

  • 选项

    • A. 2个字节
    • B. 4个字节
    • C. 由程序员确定
    • D. 以上都不正确
  • 正确答案:B

  • 解析:

    • int 类型在 Java 中占 4 个字节。

9. 下列程序段执行后t5的结果是( B )

  • 选项

int t1=9,t2=11,t3=8;
int t4,t5;
t4=t1>t2?t1:t2+t1;
t5=t4>t3?t4:t3;

  • 正确答案:B

  • 解析:

    • 首先执行 t4 = t1 > t2 ? t1 : t2 + t1t1 > t2 为 false,所以 t4 的值为 t2 + t1,即 11 + 9 = 20
    • 接着执行 t5 = t4 > t3 ? t4 : t3t4 > t3 为 true,所以 t5 的值为 t4,即 20

10. 若有定义int a=2;则执行完语句(++a)+a结果为( A )

  • 选项

    • A. 6
    • B. 5
    • C. 3
    • D. 4
  • 正确答案:A

  • 解析:

    • 表达式 (++a) + a 的执行步骤:
      • ++a 先将 a 加 1, a 变成 3。
      • a 此时值为 3,所以 (++a) + a 的结果是 3 + 3 = 6

11. 下面正确的初始化语句是(C)

  • 选项

    • A. char str[]="hello"
    • B. char str[100]="hello"
    • C. char str[]={'h','e','l','l','o'};
    • D. char str={'\t’};
  • 正确答案:C

  • 解析:

    • 选项分析:
      • A. char str[]="hello" 错误,不能直接用字符串赋值给字符数组,需要将字符串拆分成字符。
      • B. char str[100]="hello" 错误, Java 中无法在定义数组时直接指定其大小。
      • C. char str[]={'h','e','l','l','o'}; 正确,用字符数组的方式初始化char数组。
      • D. char str={'\t’}; 错误,不能直接用一个字符赋值给字符数组,需要用 {} 包裹起来。

12. 请写出标识符的命名规则,哪个选项正确(A)

  • 选项

    • A. 由英文字母、数字、下划线(_)、$组成,不限长度
    • B. 标识符的第一个字符可以是数字
    • C. 标识符不区分大小写
    • D. 标识符可以包含空格
  • 正确答案:A

  • 解析:

    • 标识符的命名规则:
      • 只能由字母、数字、下划线(_)和美元符号($)组成。
      • 第一个字符不能是数字。
      • 不能使用 Java 的关键字作为标识符。
      • 区分大小写。
      • 不能包含空格。
13. 以下代码执行后的输出结果是( B )

  • 选项

int x = 3;
int y = 10;
System.out.println(y % x);

  • 正确答案:B

  • 解析:

    • 代码执行了模运算 y % x,即 10 除以 3 的余数,结果是 1。

14. 当访问无效的数组下标时,会发生( B )

  • 选项

    • A. 编译和运行不受任何影响
    • B. 抛出下标越界异常
    • C. 抛出内存溢出
    • D. 直接死机
  • 正确答案:B

  • 解析:

    • 当访问无效的数组下标时,会抛出 ArrayIndexOutOfBoundsException 异常。

15. do while循环执行次数(D)

  • 选项

    • A. 0
    • B. 1
    • C. 0 ~ n
    • D. 1 ~ n
  • 正确答案:D

  • 解析:

    • do-while 循环的特点是:先执行循环体,再判断条件。
    • 因此,无论条件是否满足,至少会执行一次循环体。
    • 所以执行次数在 1 到 n 之间。

16. 若有定义 int a=1, b=2; 表达式 (a++)+(++b) 的值是( B )

  • 选项

    • A. 3
    • B. 4
    • C. 5
    • D. 6
  • 正确答案:B

  • 解析:

    • 表达式 (a++) + (++b) 的执行步骤:
      • a++ 先使用 a 的值 (1),再将 a 加 1,a 变成 2。
      • ++b 先将 b 加 1,b 变成 3,再使用 b 的值 (3)。
      • 所以 (a++) + (++b) 的结果是 1 + 3 = 4。

17. double类型占几个字节?(D)

  • 选项

    • A. 1
    • B. 2
    • C. 4
    • D. 8
  • 正确答案:D

  • 解析:

    • double 类型在 Java 中占 8 个字节。

18. 下列哪一个不属于Java的基本数据类型(B)

  • 选项

    • A. int
    • B. string
    • C. float
    • D. byte
  • 正确答案:B

  • 解析:

    • Java 的基本数据类型是:byteshortintlongfloatdoublecharboolean
    • String 是一个类,不是基本数据类型。

八、变量与作用域

19. 判断引用中所存储的对象是否与某种类型兼容的关键字是 instanceof

  • 答案:instanceof
  • 解析:instanceof 关键字用于检查对象是否是特定类的实例,以避免类型转换错误。

20. 静态属性(类属性)的关键字是 static

  • 答案:static
  • 解析:static 修饰的成员变量属于类本身,而不是某个实例,称为静态属性或类属性。

21. 在 Java 中,类之间的继承的特点是单继承。

  • 答案:单继承
  • 解析:Java 中一个类只能继承一个直接父类,这种特性称为单继承。

九、数组

22. 数组 a 的第三个元素表示为 (D)

  • 选项

    • A. a(3)
    • B. a[3]
    • C. a(2)
    • D. a[2]
  • 正确答案:D

  • 解析:

    • 数组的元素访问使用方括号 [],例如 a[2] 表示数组 a 的第三个元素。

23. 数组的索引从 0 开始,长度为 4,所以最大下标是 3。

  • 答案:3
  • 解析:数组的索引从 0 开始,长度为 N 的数组最大下标为 N-1。

十、编译与运行

24. Java 文件的编译扩展名是 .class,源文件扩展名是 .java。

  • 答案:.class, .java
  • 解析:Java 源文件扩展名为 .java,编译后生成扩展名为 .class 的字节码文件。

25. 定义包的关键字为 package。

  • 答案:package
  • 解析:在 Java 中,可以使用 package 关键字对类进行分组管理。

十一、其它

26. If 语句:

  • 当访问无效的数组下标时,会抛出 ArrayIndexOutOfBoundsException 异常。

  • 答案:B

  • 解析:ArrayIndexOutOfBoundsException 是 Java 中的一个异常,用来表明数组访问越界。

27. Java中的关键字:

  • publicstaticclasspackage
  • 解析:static 是 Java 的关键字,但必须全部小写。

28. float 数:

  • float 类型在 Java 中占 4 个字节,而 double 类型在 Java 中占 8 个字节。

  • 答案:B, D

  • 解析:Java中 float 数据类型占用 4 字节,而 double 数据类型占用 8 字节。

29. 标识符命名规则:

  • 只能由字母、数字、下划线(_) 和美元符号($) 组成。

  • 第一个字符不能是数字。

  • 不允许使用关键字。

  • 区分大小写。

  • 答案:A

  • 解析:标识符的命名规则:只能由字母、数字、下划线(_) 和美元符号($) 组成,第一个字符不能是数字。

  • 8
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值