Java刷题日记,20201208

虽然我什么都不会,但不妨碍我在比赛中抱着大佬的大腿躺~

开篇语

因为试题量[1]过大,因此只记录自己做错的试题,所以有一些会试题量特别大有些试题量特别小,但每一道都尽量带有解析。
在每一次的刷题日记结束后,还会做一次今日的刷题总结,反馈一次今天的题目整体难度感知以及感觉自己对知识点的掌握程度。
在多天刷题日记后,会有一天不做新题,回顾旧题,但每天都会有一次更新。
PS.但可能会有一天各种原因没有做或者就是我偷懒了,会在第二天的刷题总结中进行反思。

题目

1.第一题

  • 阅读下列利用递归来求n!的程序

    class FactorialTest{    static long Factorial(int n){//定义Factorial( )方法        if (n==1)            return 1;        else            return n* Factorial(______);    }    public static void main(String a[]){//main( )方法        int n=8;        System.out.println(n+ "!="+Factorial(n));    }}

    为保证程序正确运行,在下划线处应该填入的参数是______。
    A、n-1
    B、n-2
    C、n
    D、n+1

  • 所谓递归就是用自身的结构来描述自身。一个使用递归技术的方法将直接或间接地调用自身的方法。
    根据阶乘的概念,可以写出其递归定义:
    Factorial(n=1) n=1
    n*Factorial(n-1) n>1
    递归结构主要包括两部分:定义递归头和定义当前问题的同一性质的简化。例如n!这个问题被划分为求(n-1)!与n相乘两个步骤;同理,求(n-1)!的问题被简化为求(n-2)!与(n-1)相乘两个步骤的问题,依此类推,直到求Fac(1),再逐级返回,依次求得Fac(1)、Fac(2)…Fac(n)。

2.第二题

  • 下列能表示字符串sl长度的是______。
    A、sl.length()
    B、sl.length
    C、sl.size
    D、sl.size()

  • String类包括的方法有:length()、charAt()、indexOf()、lastIndexOf()、getChars()、getBytes()、toCharArray()等,其中,提取字符串长度的方法是"length()",调用方法如下:
    String greeting="Hello";
    int n=greeting.length(); //返回字符串的字符个数n=5

3.第三题

  • 下列方法中与Applet显示无关的是______。
    A、update()
    B、draw()
    C、repaint()
    D、paint()

  • Applet显示相关的3个方法:
    1、paint()方法:Applet的paint()方法具体执行Applet的绘制,该方法定义如下:
    public void paint(Graphics g)
    paint()方法有一个参数g是Graphics类的实例,该实例对象由浏览器生成,它包含了Applet的图形上下文信息,通过它向Applet中显示信息,该对象相当于Applet的画笔。在调用paint()方法时,由浏览器将该对象传递给paint()方法。
    2、update()方法:
    public void update(Graphics g)
    用于更新Applet的显示。该方法将首先清除背景,再调用paint()方法完成Applet的具体绘制。
    3、repaint()方法:
    public void repaint()
    repaint()方法主要用于Applet的重新显示,它调用update()方法实现对Applet的更新。

4.第四题

  • 阅读下列一个支持多线程并发操作的堆栈类代码段

public class MyStack{  private int idx=0;  private int[] data=new int[8];  public ______ void push(int i){     data[idx]=i;     idx++;  }  ……}

在下划线处应填入的是______。
A、synchronized
B、wait
C、blocked
D、interrupt

  • Java中对共享数据操作的并发控制是采用传统的封锁技术。一个程序中单独的、并发的线程对同一个对象进行访问的代码段,称为临界区(Critical Sections)。在Java语言中,临界区可以是一个语句块或是一个方法,并且用"synchronized"关键字标识。Java平台将每个由synchronized(Object)语句指定的对象设置一个锁,成为对象锁(monitor),其是一种独占的排他锁(exclusive locks),这种锁的含义是,当一个线程获得了对象锁后,便拥有该对象的操作权,其他任何线程不能对该对象进行任何操作。

5.第五题

  • 下列方法能够用来实现线程之间通信的是______。
    A、notify()
    B、run()
    C、sleep()
    D、join()

  • Java引入的wait()和notify(),是Java.lang.object类的方法,是实现线程通信的两个方法。

6.第六题

  • Java虚拟机(JVM)运行Java代码时,不会进行的操作是______。
    A、加载代码
    B、校验代码
    C、编译代码
    D、执行代码

  • Java语言的执行模式是半编译和半解释型。Java编写好的程序首先由编译器转换为标准字节代码,然后由Java虚拟机去解释执行。
    Java虚拟机(JVM)是可运行Java代码的假想计算机。只要根据JVM规格描述将解释器移植到特定的计算机上,就能保证经过编译的任何Java代码能够在该系统上运行。
    字节代码也是一种二进制文件,但不能直接在操作系统上运行,它可看作虚拟机的机器码。运行JVM字节码的工作是由解释器来完成的。解释执行过程分三步进行:代码的装入、代码的校验和代码的执行。

7.第七题

  • 当浏览器重新返回到包含Applet的页面时调用的方法是______。
    A、start()
    B、init()
    C、stop()
    D、destroy()

  • 当浏览器重新返回Applet所在页面时,Applet类的start()方法将被调用


题目总览
总题目数量 错误数量 错误率
30 07 23.33%
错题分析
错误题目涵盖知识点 数量
Applet 2
JVM 1
多线程 2
String 1
算法 1

今日小结/刷题总结

今天总共错了七道题,目前来看是比昨天要好了的,但实际刷题过程中感受到了是自己会的题目占比数量较多,因此错误题目数量有所减少
同时,一直常错的知识点也仍然是有的,例如上表(错题分析)中展示出来的内容,多线程,Applet,一直都是在错的。
所以说,不能光刷,看完一遍就不看了,还是很需要重温的。


  1. 试题量--主要为Java语言特点和实现机制 ↩︎

(0)

相关推荐

  • 从零开始学Java(九)详解Java中的方法

    方法 1.什么是方法,有什么用? (可以先看一下一个程序如果没有方法,会出现什么问题?) 方法(英语单词:method)是可以完成某个特定功能的并且可以被重复利用的代码片段. 方法的出现,让代码具有了 ...

  • 2021最新 Java虚拟机(JVM)面试题精选(附刷题小程序)

    推荐使用小程序阅读 为了能让您更加方便的阅读 本文所有的面试题目均已整理至小程序<面试手册> 可以通过微信扫描(或长按)下图的二维码享受更好的阅读体验! 目录 推荐使用小程序阅读 1. J ...

  • leetcode刷题笔记-234. 回文链表(java实现)

    题目描述 请判断一个链表是否为回文链表. 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 来源:力扣(LeetCo ...

  • 2021最新 SpringMVC面试题精选(附刷题小程序)

    目录 推荐使用小程序阅读 1. Spring MVC基础 1.1 什么是Spring MVC? 1.2 Spring MVC的优点有那些? 1.3 Spring MVC的主要组件? 1.4 什么是Di ...

  • 中考语文阅读理解满分,不是靠刷题就能实现的,3个积累和分析的方法,同学们可以试试……

    中考在即,各个学校开始进入月考模拟的测试阶段了.小岛老师看了不少地区的中考模拟卷子,也分析了挺多高分试卷,无疑都是在阅读理解题型上拿到了满分.从阅读和写作这两块看,中学阶段的语文学习方向和小学是大不同 ...

  • 2021高考作文考前必刷题-1

    考前必刷题 阅读下面的材料,根据要求写作. 材料一百年的风让山河天翻地覆,百年的梦让人心有了温度.多少青丝变白发,青春献热土,原来每一步都铭心刻骨.百年求索这天地拉开大幕,百年追寻这旗帜迎风飞舞. - ...

  • ​LeetCode刷题实战260:只出现一次的数字 III

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  • 2021最新 Spring面试题精选(附刷题小程序)

    目录 推荐使用小程序阅读 1. Spring基础 1.1 什么是 spring? 1.2 Spring框架的设计目标,设计理念,和核心是什么? 1.3 Spring 框架中都用到了哪些设计模式? 1. ...

  • 高一必刷题【183】

    滴水穿石,不是因为力量,而是在于坚持! [知识在线] 一.异面直线 1.异面直线一般依附于某几何体,所以在求异面直线所成的角时,首先将异面直线平移成相交直线,而定义中的点O常选取两异面直线中其中一个线 ...

  • ​LeetCode刷题实战258:各位相加

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...