java PTA选择题精选 期末复习

article/2025/10/30 21:36:34

先给一个老师说会考的知识点

JDK安装目录的文件

1.bin

该路径下存放了JDK的各种工具命令,常用的javac、java等命令就放在该路径下。

2.include

C 语言头文件,支持用Java本地接口和Java虚拟机接口 来实现本机代码编程

3.jre

JDK自含JRE的根目录,这是系统属性java.home所指向的目录

bin: 包含执行文件和dll等库文件,可执行文件和jdk/bin是一样,本目录不需要被PATH所包含

4.lib

该路径下存放的是JDK工具命令的实际执行程序。(即bin中绝大部分命令运行的是lib中程序)

 

Java中各个数据类型都占多少个字节呢

 

接下来是精选选择题

  1. JAVA所定义的版本中不包括:( 4.  )
    1. JAVA2 EE
    2. JAVA2 Card
    3. JAVA2 ME
    4. JAVA2 HE
    5. JAVA2 SE
  •  

 

2-17

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

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

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

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

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

在Java里,内存的释放由垃圾回收程序进行管理,程序员不能直接进行释放。

程序员可以调用System.gc()运行垃圾回收器,但是不能指定时间。

 

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

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

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

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

D.构造方法可以是private的

Java类 必须包含一个或一个以上的构造方法,没写构造方法Java也会自己初始化一个无参构造方法

构造方法也可以是私有的private,私有构造器,就是用private关键字声明的构造器。与一般公有构造器最大的区别在于,其访问权限是private,于是它只能被包含它的类自身所访问,而无法在类的外部调用,故而可以阻止对象的生成。所以,如果一个类只有一个私有构造器,而没有任何公有构造器,是无法生成任何对象的。详情请见https://blog.csdn.net/StaticFinal520/article/details/56014312?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2.control

 

 

2-2

异常包含下列那些内容?

A.程序中的语法错误

B.程序的编译错误

C.程序执行过程中遇到的事先没有预料到的情况

D.程序事先定义好的可能出现的意外情况

 

下列关于System类的叙述中,错误的是( )。

A.System类是一个final类

B.System类不能实例化

C.System类中没有定义属性

D.System类主要提供了系统环境参数的访问

System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。

    由于该类的构造方法是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员方法和成员变量都是static(静态)的,所以也可以很方便的调用他。

    system中包含了in、out和err三个成员变量,分别代表标准输入流(键盘输入)、标准输出流(显示器)和标准错误输出流(显示器)

 

执行完以下代码int [ ] x = new int[10];后,以下哪项说明是正确的( )。

A.x[9]为0

B.x[9]未定义

C.x[10]为0

D.x[0]为空

1、int类型定义的数组,初始化默认是0

2、String类型定义的数组,默认值是null

3、char类型定义的数组,使用UTF8字符集 给出的结果是 

4、double类型定义的数组,默认值是0.0

5、float类型定义的数组,默认值是0.0

6、boolean类型定义的数组,默认值是false

 

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

A.static

B.final

C.private

D.void

引用百度经验里的方法回答这个问题https://jingyan.baidu.com/article/9f7e7ec0e61d9d6f2915546e.html

  1. 静态方法的调用方式,类名称+方法名;

    编写TestStatic类,其有一个静态方法和一个实例方法。

    Java static关键字修饰方法

  2. 然后编写测试类,使用类名称+方法名,去调用这两个方法,发现调用test2时,编译器报错,其不是一个类方法。

    然后创建

  3. TestStatic的一个实例ts,然后使用ts可以调用test2。

    Java static关键字修饰方法

 

Java中()。

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

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

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

D.上述说法都不对

这个题可以说相当经典了,java舍弃了C++中复杂的子类继承多个父类的功能,一个子类只能继承一个父类,一个父类能被多个子类继承。

 

 

6.要从文件" file.dat"文件中读出第10个字节到变量C中,下列哪个方法适合? A

A、 FileInputStream in=new FileInputStream("file.dat"); in.skip(9); int c=in.read();

B、 FileInputStream in=new FileInputStream("file.dat"); in.skip(10); int c=in.read();

C、 FileInputStream in=new FileInputStream("file.dat"); int c=in.read();

D、 RandomAccessFile in=new RandomAccessFile("file.dat"); in.skip(9); int c=in.readByte();

 

 

11.下列代码哪几行会出错: C
1) public void modify() {
2) int I, j, k;
3) I = 100;
4) while ( I > 0 ) {
5) j = I * 2;
6) System.out.println (" The value of j is " + j );
7) k = k + 1;
8) I--;
9) }
10} }

A、 line 4

B、 line 6

C、 line 7

D、 line 8

未初始化

 

12.MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量。 D

A、 public int MAX_LENGTH=100;

B、 final int MAX_LENGTH=100;

C、 final public int MAX_LENGTH=100;

D、 public final int MAX_LENGTH=100.

final关键字的用法 

变量:final成员变量表示常量,只能被赋值一次,赋值后值不再改变。

方法:只有在想明确禁止 该方法在子类中被覆盖的情况下才将方法设置为final的

类:当用final修饰一个类时,表明这个类不能被继承。也就是说,如果一个类你永远不会让他被继承,就可以用final进行修饰

 

 

20.对于下列代码:
  public class Parent {
   public int addValue( int a, int b) {
     int s;
     s = a+b;
     return s;
   }
  }
  class Child extends Parent {
  }
 下述哪些方法可以加入类Child? C

A、 int addValue( int a, int b ){// do something...}

B、 public void addValue (int a, int b ){// do something...}

C、 public int addValue( int a ){// do something...}

D、 public int addValue( int a, int b )throws MyException {//do something...}

 

23.给定下面的代码片段: C
  1) String str = null;
  2) if ((str != null) && (str.length() > 10)) {
  3) System.out.println("more than 10");
  4) }
  5) else if ((str != null) & (str.length() < 5)) {
  6) System.out.println("less than 5");
  7) }
  8) else { System.out.println("end"); }
哪些行会导致错误?

A、 line 1

B、 line 2

C、 line 5

D、 line 8

注意逻辑与是“&&”,按位与是“&”

 

30.下列关于Java线程的说法那些是正确的() D

A、 每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。

B、 创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。

C、 Thread类属于java.util程序包。

D、 以上说法无一正确。

 

33.指出下列程序的运行结果 B
  int i = 9;
  switch (i) {
  default:
  System.out.println("default");
  case 0:
  System.out.println("zero");
  break;
  case 1:
  System.out.println("one");
  case 2:
  System.out.println("two");
  }

A、 default

B、 default, zero

C、 error default clause not defined

D、 no output displayed那个

default没写break

 

35. 下面哪个单词是Java语言的关键字(    B     )

A、Float     B、this     C、string    D、unsigned 

float要小写,String要大写

 

 

36. 下面哪个是Java语言中正确的标识符(    C       )

A、3com     B、import    C、that         D、this 

标识符是给变量、方法和类来取名字的,第一个不能是数字,且不能是关键字

 

 

40. 下面哪个是对字符串String的正确定义 (   A        )

A、String s1=null;            B、String s2=’null’ ;   

C、String s3=(String) ‘abc’ ;     D、String s4=(String) ‘\uface’;

 

41. 下面哪条语句不能定义一个float型的变量(  B       )

A、float f1= -343 ;                   B、float f2=3.14 ;   

C、float f3=0x12345 ;              D、float f4=2.8F ;

float后面如果是小数要跟一个小写的f

 

42. 下面哪条语句定义了5个元素的数组(   A       )

A、int [] a={22,23,24,25,12};

B、int a []=new int(5);

C、int [5] array;

D、int [] arr;

 

46. 给出一段程序,试判断哪个是正确的结果(    B         )

public class rtEx‘’cept{

    public static void throwit(){

System.out.print(“throwit”);

throw new RuntimeException();  }

    public static void main(String [] aa){

        try{

            System.out.print(“hello “);

            throwit(); }

        catch(Exception re){

        System.out.print(“caught ”);  }

        finally{

        System.out.print(“finally ”); }

    System.out.print(“after ”);

    }

}

A、hello throwit caught

B、hello throwit caught finally after

C、hello throwit RuntimeException after

D、hello throwit caught finally after RuntimeException

 

57.下面哪个修饰符修饰的变量是所有同一个类生成的对象共享的(      C   )

A、public        B、private           C、static    D、final

 

59.下面关于java中类的说法哪个是不正确的(     C      )

A、类体中只能有变量定义和成员方法的定义,不能有其他语句。

B、构造函数是类中的特殊方法。

C、类一定要声明为public的,才可以执行。

D、一个java文件中可以有多个class定义。

可以有多个Class,但只能有个是用public 修饰的Class,且和文件名一致,其他的class一般不加访问权限修饰(即class XXX{}形式)

 

60. 下面程序运行后的输出结果为(     c     )

class A

{static int y=6;

void showy( ){System.out.println(“y=”+y); }   }

class testA

{

    public static void main(String aaa [])

    { A a1=new A( );

      A.y+=1;  a1.y++;

      a1.showy( );

}

}

输出结果选择:

A、y=6;         B、y=7;         C、y=8;         D、程序运行出错  

static是全局的变量,都能用,都能改

 

62. 下面关于构造函数的说法不正确的是(    B        )

A、构造函数也属于类的方法,用于创建对象的时候给成员变量赋值。

B、构造函数不可以重载。

C、构造函数没有返回值。

D、构造函数一定要和类名相同。

构造函数当然可以重载

 

66.监听事件和处理事件    B

A、都由Listener完成  B、都由相应事件Listener处登记过的构件完成  

C、由Listener和构件分别完成  D、由Listener和窗口分别完成

 

68.给出如下代码:

class Test{

  private int m;

  public static void fun() {

    // some code...

  }

}

如何使成员变量m 被函数fun()直接访问?  C

 A、将private int m 改为protected int m

 B、将private int m 改为 public int m

 C、将private int m 改为 static int m

 D、将private int m 改为 int m

静态成员函数只能够调用静态成员变量,不能访问普通变量。

发明静态函数的目的:操作静态变量,执行一些和特定对象无关的内容

 

69.下面的代码段中,执行之后i 和j 的值是什么?  C

int i = 1;

int j;

j = i++;

 A、 1, 1     B、1, 2      C、2, 1        D、2, 2

 

70.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的 ? B

A、 ArrayList myList=new Object();

B、 List myList=new ArrayList();

C、 ArrayList myList=new List();

D、 List myList=new List();

 

 

73.指出下列程序运行的结果   D
public class Example{
  String str=new String("good");
  char[]ch={'a','b','c'};
  public static void main(String args[]){
    Example ex=new Example();
    ex.change(ex.str,ex.ch);
    System.out.print(ex.str+" and ");
    Sytem.out.print(ex.ch);
  }
  public void change(String str,char ch[]){
    str="test ok";
    ch[0]='g';
  }
}

A、 good and abc

B、 good and gbc

C、test ok and abc

D、 test ok and gbc

 

74.运行下列程序, 会产生什么结果  A
public class X extends Thread implements Runable{
 public void run(){
  System.out.println("this is run()");
 }
 public static void main(String args[])
 {
  Thread t=new Thread(new X());
  t.start();
 }
}

A、 第一行会产生编译错误

B、 第六行会产生编译错误

C、 第六行会产生运行错误

D、 程序会运行和启动

是Runnable不是Runable

 

84、如果类中的成员变量可以被同一包访问,则使用如下哪个约束符?   D

 A、 private       B、public       C、protected         D、no modifier

 

 

86.MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量。 D

A、 public int MAX_LENGTH=100;

B、 final int MAX_LENGTH=100;

C、 final public int MAX_LENGTH=100;

D、 public final int MAX_LENGTH=100.

 

120.对于catch子句的排列,下列哪种是正确的(A )
A.父类在先,子类在后
B.子类在先,父类在后
C.有继承关系的异常不能在同一个try程序段内
D.先有子类,其他如何排列都无关

 

124.在异常处理中,如释放资源、关闭文件、关闭数据库等由( C)来完成。
A.try子句           B.catch子句
C.finally子句         D.throw子句

 

133.Java虚拟机的执行过程有多个特点,下列哪个特点不属于JVM执行特点(D )
A.多线程               B.动态连接
C.异常处理              D.异步处理

 

144.Java中哪个类提供了随机访问文件的功能(A )
A.RandomAccessFile类        B.RandomFile类
C.File类              D.AccessFile类

 

145.当方法遇到异常又不知如何处理时,下列哪种说法是正确的( C)
A.捕获异常             B.抛出异常
C.声明异常             D.嵌套异常

 

146.Java程序的执行过程中用到一套JDK工具,其中java.exe是指( B)
A.Java文档生成器          B.Java解释器
C.Java编译器            D.Java类分解器

 

149.Java语言中,下列标识符错误的是(C )
A.diss                B.—name
C.&count              D.—j

 

152.下面说法不正确的是(B )
A.Java中线程是抢占式的      B.Java中线程是分时的
C.Java中的线程可以共享数据    D.Java中的线程可以共享代码

 

153.下面属于Java线程同步方法的方法有( C)
A.joiny()            B.run()
C.wait()             D.destroy()

 

155.下列说法不正确的是(C )
A.IOException必须被捕获或抛出
B.java语言会自动初始化变量的值
C.java语言不允许同时继承一个类并实现一个接口
D.java语言会自动回收内存中的垃圾

 

157.Java语言中,下列标识符错误的是(BD )
A.—sys1             B.&—m
C.I               D.40name

 

161.在下列事件处理机制中哪个不是机制中的角色(C )
A.事件             B.事件源
C.事件接口           D.事件处理者

 

164.对象使用时,下面描述错误的是( B)
A.通过“.”运算符调用成员变量和方法
B.通过成员变量的访问权限设定限制自身对这些变量方法的调用
C.将一个对象申明为类的成员时,必须在使用前为其分配内存
D.在方法中使用对象作为参数时,采用引用调用

限制自身不对,会限制子类,包内类,包外类的调用

 

170.JAVA程序经常用到“递归”,“递归”的基本思想是(C )
A.“让别人反复调用自己”        B.“自己反复调用别人”
C.“自己反复调用自己”         D.以上说法都不对

 

 

  • 运算符优先级别排序正确的是(A     )
    1. 由高向低分别是:()!、算术运算符、关系运算符、逻辑运算符、赋值运算符;
    2. 由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;
    3. 由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;
    4. 由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;

在java中下列关于自动类型转换说法正确的是(      A     )

  1. 基本数据类型和String相加结果一定是字符串型
  2. char类型和int类型相加结果一定是字符
  3. double类型可以自动转换为int
  4. char + int + double +"" 结果一定是double;

 

 

 

 

 

 


http://chatgpt.dhexx.cn/article/53jZSI11.shtml

相关文章

Java语法基础篇选择题练习

Java语法基础篇 Java选择题练习&#xff1a;数组&#xff08;牛客网&#xff09;Java选择题练习&#xff1a;运算符&#xff08;牛客网&#xff09;Java选择题练习&#xff1a;常量变量&#xff08;牛客网&#xff09;Java选择题练习&#xff1a;循环&#xff08;牛客网&#x…

怎样用Java制作一个选择题

怎样用Java制作一个选择题&#xff1f; package Work1;public class TestSelect {public static void main(String[] args) {Question questionnew Question(1, "&#xff08;&#xff09;是拥有属性和方法的实体。", 5, "AB",new Select("A", …

java选择题——代码运行题

1. 以下代码运行输出是() public class Person{private String name = "Person";int age = 0; }public class Child extends Person{public String grade;public static void main(String[] args){Person p = new Child();System.out.println(p.name); //Person的…

java头歌选择题

第一章 Java入门 1、Java源代码文件的扩展名为&#xff08; &#xff09; A、.txtB、.classC、.javaD、.doc 2、在控制台显示消息的语句正确的是&#xff08; &#xff09; A、System.out.println(我是一个Java程序员了&#xff01;);B、System.Out.println("我是一个Java…

2022Java笔试题选择题整理(附答案解析)走过路过不要错过了喂!

2022Java笔试题选择题&#xff08;一&#xff09; &#x1f3e0;个人主页&#xff1a;编程ID &#x1f9d1;个人简介&#xff1a;大家好&#xff0c;我是编程ID&#xff0c;一个想要与大家共同进步的程序员儿 &#x1f9d1;如果各位大佬在准备面试&#xff0c;找工作&#x…

第三章 软件项目范围管理

项目范围对项目的影响是决定性的&#xff0c;它确定了软件项目工作内容的多少。有效的范围管理可以保证项目只做必须做的事情&#xff0c;避免范围蔓延和做无用功&#xff0c;同时也避免不清晰的需求所导致的严重的系统缺陷。 本章内容提要 n 3.1 需求获取 n 3.2 范围定义 n…

软件项目管理 8.4.软件项目质量计划

&#x1f680; 优质资源分享 &#x1f680; 学习路线指引&#xff08;点击解锁&#xff09;知识定位人群定位&#x1f9e1; Python实战微信订餐小程序 &#x1f9e1;进阶级本课程是python flask微信小程序的完美结合&#xff0c;从项目搭建到腾讯云部署上线&#xff0c;打造一…

软件项目进度计划

软件项目进度计划 进度的基本知识任务定义任务关系历时估算历时估算的基本方法-传统定额估算法经验导出模型工程评估评审技术(PERT)预留分析Jones的一阶估算准则类比估算专家判断基于承诺的进度估算 历时估算的基本方法-敏捷敏捷历时估算 进度计划编排进度编制的基本方法超前(L…

软件项目成本计划

软件项目成本计划 项目规模估算方法 代码行估算法(误差较大) 软件项目规模&#xff1a; 即工作量&#xff0c;例如软件规划&#xff0c;软件管理&#xff0c;需求分析&#xff0c;系统设计&#xff0c;编码&#xff0c;测试&#xff0c;以及后期维护等任务。 规模单位&…

「软件项目管理」软件项目范围计划——需求管理与任务分解

软件项目范围计划——需求管理与任务分解 序言一、软件需求定义及层次1、定义2、层次 二、软件需求管理过程1、管理过程2、需求获取3、需求分析4、需求规格编写5、需求验证6、需求变更&#xff08;1&#xff09;需求变更管理的主要工作&#xff08;2&#xff09;需求变更控制流…

软件项目管理第二篇:项目计划 (1)——范围计划

第二篇&#xff1a;项目计划 第四章&#xff1a;软件项目范围计划——需求管理 1.软件需求&#xff1a; &#xff08;1&#xff09;定义&#xff1a; 是指用户对软件的功能和性能的要求&#xff0c;就是用户希望软件能做什么事情&#xff0c;完成什么样的功能。 &#xff0…

推荐开源项目计划管理软件 kanboard

本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/79467918 1&#xff0c;关于kanboard 是一个看板管理软件。 是php写的。是一个开源项目管理软件。按照敏捷开发设计的。 项目地址&#xff1a; https://hub.docker.com/r/kanboard/kanboard/ 官方网站…

软件项目管理–进度计划

软件项目管理–进度计划 项目初始–项目计划–项目执行控制–项目结束 项目计划&#xff1a; 范围计划成本计划进度计划质量计划配置管理计划人员与沟通计划风险计划合同计划集成计划 软件项目进度计划 进度计划的重要性 按时完成项目是项目经理最大的挑战之一时间是项目规…

项目管理必备的软件,实用方便

在管理项目的过程中&#xff0c;选择一款好用的项目管理软件是特别的重要的。作为项目经理&#xff0c;我总结了几年来的工作经验和最近的行业发展的角度相结合&#xff0c;总结了4款超级好用的产设项目管理软件&#xff0c;希望对大家有所帮助: 1.Pixso Pixso是一款功能强大…

盘点40余款好用的项目管理软件

本表单按照产品顺序排序&#xff0c;为大家介绍Zoho Projects项目管理软件等40余款产品&#xff0c;帮助大家了解项目管理软件有哪些。 项目管理软件 在这些产品中&#xff0c;Zoho Projects非常适合中小型企业&#xff0c;它的主要功能&#xff1a; 进度管理公开透明 项目群…

电力系统负荷预测基于神经网络模型

电力系统负荷预测是电力系统调度、实时控制、运行计划和发展规划的前提&#xff0c;是电网调度部门和规划部门所必须具有的基本信息。准确的负荷预测有助于提高系统的安全性和稳定性&#xff0c;能够减少发电成本。随着电力市场的建立和发展&#xff0c;短期负荷预测技术已成为…

基于决策树的电网负荷预测

1、情景问题提出及分析 电力系统的作用是对系统内各用户尽可能经济的提供可靠而合乎标准要求的电能。现代电网以系统运行的经济性为首要目标&#xff0c;再加之电能不能大量存储的特点&#xff0c;因此对电力系统的负载预测变得十分重要。 随着技术不断发展&#xff0c;当今越来…

【负荷预测】基于灰色预测算法的负荷预测(Python代码实现)

目录 1 概述 2 流程图 3 入门算例 4 基于灰色预测算法的负荷预测&#xff08;Python代码实现&#xff09; 1 概述 “由于数据列的离散性&#xff0c;信息时区内将出现空集&#xff08;不包含信息的定时区&#xff09;&#xff0c;因此只能按近似的微分方程条件&#xff0c;…

时间序列特征构造:以电力负荷预测为例讲解(python语言)

个人电气博文目录传送门 学好电气全靠它&#xff0c;个人电气博文目录&#xff08;持续更新中…&#xff09; 时间序列特征构造 时间序列问题&#xff0c;首先不管是回归问题&#xff0c;还是分类问题。 一个模型的好坏&#xff0c;决定因素由数据集的大小&#xff0c;特征值…