Java期末复习基础知识(for PTA)

一.判断题


1.Object是Java中所有类的共同父类。T

Object是Java中所有类的共同父类。在Java中,每个类都直接或间接继承自Object类。因此,Object类中的方法(如equals()hashCode()toString()等)都可以在任意Java对象上调用


2.Java语言的标识符不区分大小写。F

java中是严格区分大小写的


3.JAVA抽象类中一定含有抽象方法。T

Java抽象类中至少含有一个抽象方法


4.Java语言中,变量名可以用汉字表示。T


5.package语句必须放到java程序的最开始。T


6.JAVA中,一个接口允许继承多个接口。T

java 不支持多重继承(子类只能是一个父类) 为了克服单继承的缺点,Java使用了接口,一个类可以实现多个接口


7.String是Java中定义的基本数据类型。F

String 是一种类


8.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。T


9.Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。T


10.一个Java源文件中可以有多个类,但只能有一个类是public的。T

main方法只有一个,public类是main方法的入口


11.如果Java源文件中包含了多个类,那么用编译器javac编译完源文件后将生成多个扩展名为.class的文件。T


12.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是System.out和System.err。T


13.Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。T

Java期末复习基础知识(for PTA)_第1张图片


14.在Java程序中,可以使用private来修饰一个类。T

private关键字只能用于修饰类的成员(字段、方法、构造函数),不能修饰类本身


15.一个Java源文件就是由类和接口组成的。T

一个Java源文件可以包含一个或多个类和接口。但是,只能有一个公共(public)类,并且这个公共类的名称必须与文件名相同


16.Java中所有的I/O都是通过流来实现的。T

在Java中,所有的I/O都是通过流来进行的,包括文件I/O、网络I/O、控制台I/O等。通过使用流,程序可以灵活地读取和写入数据,并且可以方便地进行各种操作(例如缓冲、过滤、转换等

Java之I/O流_java中所有的i o都是通过流来实现的吗-CSDN博客


17.在Java中,含有抽象方法的类一定是抽象类。T


二.单选题


1.下列不可作为java语言标识符的是()。

A.a2

B.$2

C._2

D.22

Java期末复习基础知识(for PTA)_第2张图片


2.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是( ).

A.a1.java

B.a1.class

C.a1

D.都对

源文件名的要求:名称和主类名一致,拓展名为java


3.Java中( ) 。

A.一个子类可以有多个父类,一个父类也可以有多个子类

B.一个子类可以有多个父类,但一个父类只可以有一个子类

C.一个子类可以有一个父类,但一个父类可以有多个子类

D.上述说法都不对

一个父类可以有多个子类,但是一个子类只能有一个父类。其中一个子类只能单继承一个父类


4.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?( )

A.安全性

B.多线性

C.跨平台

D.可移植


5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为(  )。

A.隐藏

B.覆盖

C.重载

D.Java不支持此特性


6.下列哪些语句关于Java内存回收的说明是正确的? (  )

A.程序员必须创建一个线程来释放内存

B.内存回收程序负责释放无用内存

C.内存回收程序允许程序员直接释放内存

D.内存回收程序可以在指定的时间释放内存对象


7.A派生出子类B,B派生出子类C,对于如下Java源代码正确的说法是()。

1.    A  a0 =new  A();
2.    A  a1 =new  B();
3.    A  a2 =new  C();

A.只有第1行能通过编译

B.第1、2行能通过编译,但第3行编译出错

C.第1、2、3行能通过编译,但第2、3行运行时出错

D.第1行、第2行和第3行的声明都是正确的


8.以下关于继承的叙述正确的是(     )。

A.在Java中类只允许单一继承

B.在Java中一个类只能实现一个接口

C.在Java中一个类不能同时继承一个类和实现一个接口

D.在Java中接口只允许单一继承

Java是单继承,但是可以实现多个接口。


9.编译Java源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(    )。

A..byte

B..class

C..html

D..ex


10.在Java中用什么关键字修饰的方法可以直接通过类名来调用?(     )

A.static

B.final

C.private

D.void

java编程中直接用方法名来调用方法是本类中static修饰的方法,即静态方法可直接用方内法名来容调用方法”的意思。


11.在Java中,"456"属于(    )类的对象。

A.int

B.String

C.Integer

D.Number


12.Java的集合框架中重要的接口java.util.Collection定义了许多方法。选项中哪个方法不是Collection接口所定义的?(     )

A.int size()

B.boolean containsAll(Collection c)

C.compareTo(Object obj)

D.boolean remove(Object obj)

compareTo(Object obj)方法是java.lang.Comparable接口中的方法


13.在Java中,负责对字节代码解释执行的是( )。

A.应用服务器

B.虚拟机

C.垃圾回收器

D.编译器

Java期末复习基础知识(for PTA)_第3张图片


14.下面说法正确的是( ) 。

A.JAVA中线程是非抢占式的

B.JAVA中的线程不可以共享数据

C.每个JAVA程序都至少有一个线程,即主线程

D.JAVA中的线程不可以共享代码


15.下面关于缺省构造方法的描述中正确的是( )。

A.当类中没有定义任何构造方法时,Java编译器将为这个类创建缺省构造方法

B.缺省构造方法可以初始化其他方法中定义的变量

C.Java编译器会为所有的类创建缺省构造方法。

D.如果在一个类中定义的构造方法都声明了参数,Java编译器将为这个类创建一个缺省构造方法


16.下面哪单词是Java语言的关键字( )。

A.Float

B.this

C.string

D.unsigned


17.下述哪条关于构造方法的说法,不符合Java语法的规定( )。

A.每个类至少有一个构造方法

B.构造方法必须与类同名

C.构造方法无返回值,其返回值类型必须写为void

D.构造方法可以是private的


18.以下关于Java的局部内部类的说法错误的是( )

A.局部内部类只能在当前类中使用

B.局部内部类不能包含静态成员

C.局部内部类可以访问外部类的所有成员

D.在局部内部类中定义的内部类不能被private修饰符修饰

Java基础 - 内部类02 - 局部内部类详解_什么是局部内部类-CSDN博客


19.对于下列代码:

    String str1="java";
    String str2="java";
    String str3=new String("java");
    StringBuffer str4=new StringBuffer("java");

以下表达式的值为true的是( )

A.str1= =str2;

B.str1= =str4;

C.str2= =str3;

D.str3= =str4;

Java中String str1 = “123“;与String str1 = new String(“123”);的区别-CSDN博客


20.在Java中,能实现多重继承效果的方式是( )。

A.接口

B.继承

C.内部类

D.适配器


21.下列说法错误的一项是:( )。

A.Java中的第一个线程都属于某个线程组。

B.线程只能在其创建时设置所属的线程组。

C.线程创建之后可以从一个线程组转移到另一个线程组。

D.新建的线程默认情况下属于其父线程所属的线程组。

Java多线程(超详细!)-CSDN博客


22.如下程序输出( )

public class Test {  
  public static void main(String[] args) {
    String s = "Java";
    StringBuilder buffer = new StringBuilder(s);
    change(s);
    System.out.println(s);
  }
  
  private static void change(String s) {
    s = s + " and HTML";
  }
}

A.Java

B.Java and HTML

C.and HTML

D.什么都不显示


23.以下代码输出( )。

  public static void main(String[] args) {
    String[] tokens = "Welcome to Java".split("o");
    for (int i = 0; i < tokens.length; i++) {
      System.out.print(tokens[i] + " ");
    }
  }

A.

Welcome to Java

B.

Welc me to Java

C.

Welc me t  Java

D.

Welcome t  Java
  1. 调用"Welcome to Java"字符串对象的split方法,传入参数"o",表示以字母"o"作为分隔符进行分割。

     2.循环结束后,程序执行完毕,输出结果为:"Welc me t Java "。


24.Java 语言的特点不包括( )

A.平台无关

B.面向对象

C.多重继承

D.支持多线程


25.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( )。

A.隐藏

B.覆盖

C.重载

D.Java不支持此特性


26.某Java源文件代码如下,该源文件应如何命名?

public class A {
 int a;
}
class B {
 int b;
}
class C {
 public static void main(String[] args) {
  System.out.print("HELLO!");
 }
}

A.一定是A.java

B.一定是B.java

C.一定是C.java

D.不确定

如果 Java 程序源代码里定义了一个 public 类,则该源文件的主文件名必须与该 public 类(也就是该类定义使用了 public 关键字修饰)的类名相同。 


27.Java源代码文件的扩展名为( )

A..txt

B..class

C..java

D..doc

java源文件名的后缀是:“.java”。java编译后的文件扩展名是:“.class”; 


三.填空题


1.面向对象的三大特性,是封装性、继承性和多态性。


2.Java中,基本数据类型int对应的包装类是Integer

Java基础之int和Integer有什么区别_integer什么意思-CSDN博客


 3.用二分法对数组a[12]进行查找,若待查元素为x,且a[3]<x<a[4],那么查找路径为6,3,4;用下标序列表示,用英文逗号隔开),查找长度为3,查找失败的情况等概率,那么,查找失败的平均长度为_____


4.类的封装的时候如果需要类中的属性私有化,可使用private关键字来修饰。


5.Java中定义一个类,需要使用class关键字。


6.在Java中使用String类型的实例对象表示一个不可变字符串。


7.创建一个名为 myPackage 的包的语句是package myPackage;


8.可以通过import关键字引用其它包中定义的类和接口。


9.Java中关键字final的作用相当于告诉编译程序,相应的类或方法不能变动、扩展或重写。而abstract则是告诉编译程序,相应的类或方法必须在完善定义之后才能使用。


10.写出以下程序段的运行结果。

int a = 2, b = 3, c = 1, d;
printf("%d\n", a > b == c);
printf("%d\n", d = a > b);

第1行输出0

第2行输出


11.写出以下程序段的运行结果。

char ch = 'w';
int b = 0;
printf("%d\n", ch || (b = 10));
printf("%d\n", b);

第1行输出1

第2行输出0

Java期末复习基础知识(for PTA)_第4张图片


12.写出以下程序段的运行结果。

int a = 1, b = 2, d = -5;
printf("%d\n", -a-5*b <= d + 1);
printf("%d\n", b == (a = 2));

第1行输出1

第2行输出1


13.Java中,抛出异常的关键字是throw

Java期末复习基础知识(for PTA)_第5张图片


14.写出以下程序段的运行结果。

int a; 
scanf("%d", &a); 
if(a > 50) printf("%d", a); 
if(a > 40) printf("%d", a); 
if(a > 30) printf("%d", a); 

Java期末复习基础知识(for PTA)_第6张图片


四.编程题


你可能感兴趣的:(PTA-Java基础题,java,开发语言)