Java笔试复盘

news2024/12/27 6:25:20

目录

1. finalize的含义

2.Statement和PreparedStatement用法

3. 接口能用protected修饰吗

4.java实现分解质因数


今天去参加了一场国企单位的笔试,很基础,但是有些细节的地方还是觉得答得不好,所以复盘一下。

1. finalize的含义

finalize: 是Object类的一个方法,因为所有的类都继承自Object类,所以所有的类都有finalize方法。 在垃圾收集器将该对象清除出内存之前会先调用它的finalize方法,做一些内存清理工作,通常这部分内存是非java内存,如socket,finalize只会被调用一次。

程序员都了解初始化的重要性,但是会常常忘记同样重要的清理工作,java有垃圾回收器负责回收无用对象占用的内存资源,但是也有特殊情况,你的对象获得了一块特殊的内存区域,并不是通过 new 方法,由于垃圾回收器只知道释放那些经由new分配的内存, 所以它不知道如何释放这些特殊的内存。

java 考虑到这种情况,允许在类中定义一个名为 finalize() 的方法。他的工作原理是这样的:一旦垃圾回收器准备释放对象占用的存储空间,将首先调用 finalize() 方法,并在下一次垃圾回收动作发生时,才会真正的回收对象占用的内存。就像为垃圾回收器添加一个回调方法一样。

这个题我只回答了是Object类的方法,可以进行手动GC,不是很准确。

2.Statement和PreparedStatement用法

这里考的是一道选择题,因为实在是很少手动写jdbc,平时太过依赖框架和IDE的自动生成,很遗憾,答错了。

stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);

createStatement方法是没有参数,PreparedStatement才有,晕,实在是不怎么写这种代码。

ps = conn.prepareStatement(sql);

这个太细节了,只能强记。

3. 接口能用protected修饰吗

接口方法只能使用public,既然只能用public,java编译器在你忘了在方法前写public的时候干脆自动帮你转成public了。

至于接口类能不能用protected,自己看吧

4.java实现分解质因数

public class PrimeTest {

 public static void main(String[] args) {
  Scanner in=new Scanner(System.in);
        int number=in.nextInt();
        if(isPrime(number)){
         System.out.print(number);
        }else{
         System.out.print(number+"=");
         factor(number);
        }
       
 }
 public static void factor(int num){
  for(int i=2;i<num;i++){
   if(num%i==0){
    System.out.print(i+"*");
    if(isPrime(num/i)){
     System.out.print(num/i);
    }else{
    factor(num/i); 
    }
    //结束方法非常重要,下面的方法就会因为方法没有结束而继续进行下去
    return;
   }
  }
 }

public static boolean isPrime(int num){
 boolean isPrime=true;
 for(int i=2;i<num;i++){
  if(num%i==0){
   isPrime=false;
   break;
  }
 }
 return isPrime;
}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/4908.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

WPF几何绘图(2)

Path的各种线段&#xff1a; LineSegment 直线段。 ArcSegment 圆弧线段。 BezierSegment 三次贝塞尔曲线段&#xff08;默认贝斯尔曲线是指三次曲线&#xff09;。 QuadraticBezierSegment 二次贝塞尔曲线段。 PolyLineSegment 多直线段。 PolyBezierSegment 多三次方贝塞…

一篇博文,带你入门数据库SQL语言

目录 &#x1f4d6;前言 &#x1f388;SQL的分类 &#x1f3a8;数据库的分类 ✨SQL的基础操作 ⚽SQL常用数据类型 &#x1f3c9;数据库的操作 ⚾创建数据库 &#x1f94e;显示数据库 &#x1f3c0;使用数据库 &#x1f3d0;删除数据库 &#x1f37f;表的操作 &…

Emgu CV4图像处理之打开Tensorflow训练模型17(C#)

本文测试环境&#xff1a; win10 64位 vistual studio 2019 Emgu CV 4.6.0 环境配置准备&#xff1a; 1 新增控制台项目&#xff0c;.net framework为4.7.2 2 把win-x64目录的native目录下的文件全部拷贝到项目的运行目录Debug目录下 3 项目选择x64 4 添加项目引用…

(CVE-2019-0227)Axis<=1.4 远程命令执行漏洞

结尾附上本文的环境和PoC 一、漏洞介绍 漏洞本质是管理员对AdminService的配置错误。当enableRemoteAdmin属性设置为true时&#xff0c;攻击者可以构造WebService调用freemarker组件中的template.utility.Execute类&#xff0c;远程利用AdminService接口进行WebService发布&am…

Linux_gdb_进程概念

目录 进度条 学习过程 自主实现&#xff1a; Linux的git操作 .gitignore .git git add . git commit git push git log git status git pull 进度条 学习过程 首先创建源文件&#xff0c;这个源文件就是我们要写的进度条的定义 接下来&#xff0c;我们创建文件Ma…

化工行业供应商协同管理系统:助力企业打造良好营商环境,提升运营效率

化工行业是我国工业发展的重要基础&#xff0c;也是国民经济发展和生活不可或缺的一部分。化工产品的更新换代&#xff0c;产业的不断升级&#xff0c;对原材料的采购也提出了更高要求。 由于精细化工行业原材料的质量和成本&#xff0c;与供应商的选择与资质具有重要的关联性…

[附源码]计算机毕业设计JAVAjsp医院网上预约系统

[附源码]计算机毕业设计JAVAjsp医院网上预约系统 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM myb…

关于Python和自动化

最近碰到了好几次面试都需要问Python。 在这里我有一个误区&#xff0c;向各位面试官先陈述一下。 之前的时候&#xff0c;对C和C研究的更加多一点&#xff0c;再加上多年的自动化维护经验&#xff0c;自认为对po封装模式的理解&#xff0c;因此对于自认为对Python是十拿九稳&a…

[Spring MVC6]事务管理与缓存机制

Spring MVC 关于Spring与MaBatis事务管理&#xff0c;这里的事务管理类似于数据库中的transaction,基本操作也都一样。同时介绍了MaBatis缓存模式&#xff0c;特别是一级缓存与二级缓存。 希望对你有所帮助&#xff01; 目录Spring 事务管理MyBatis 事务管理MyBatis 缓存模式一…

html实现个人空间主页(附源码)

文章目录1.设计思路1.1 欢迎界面1.2 屏保界面1.3 主界面1.4 我的项目界面1.5 我的日记界面1.6 我的日记管理界面2.效果展示和代码展示2.1 动态效果图2.2 主界面代码2.3 欢迎页代码2.4 屏保代码源码下载作者&#xff1a;xcLeigh 文章地址&#xff1a;https://blog.csdn.net/weix…

JavaScript算法 — 二叉树遍历

目录1、构造二叉树2、递归遍历3、非递归遍历3.1 先序3.2 中序3.3 后序1、构造二叉树 树节点&#xff1a; // 二叉树节点的构造函数 function TreeNode(val, left, right) {this.val (valundefined ? 0 : val)this.left (leftundefined ? null : left)this.right (rightu…

给好朋友用代码画一个爱心吧

目录 效果图 html爱心 python爱心 ​编辑 代码 html python 浅浅分析一下《燃烧我&#xff0c;照亮你》剧中的爱心代码 光棍节要到了&#xff0c;不给心意的人写个爱心代码&#xff1f; 话不多说&#xff0c;上才艺&#xff0c;这里有两种爱心&#xff0c;一种是html&a…

Unity功能—— 在VS中快速访问Unity API对应文档

声明&#xff1a;本文为个人笔记&#xff0c;用于学习研究使用非商用&#xff0c;内容为个人研究及综合整理所得&#xff0c;若有违规&#xff0c;请联系&#xff0c;违规必改。 Unity功能—— 在VS中快速访问Unity API对应文档 文章目录Unity功能—— 在VS中快速访问Unity API…

光点科技数据口袋数据填报系统满足多类型企业报表需求_光点科技

在招聘过程中&#xff0c;HR对数据处理存在一定的需求&#xff0c;手动整理繁杂的数据无疑是加大招聘工作量&#xff0c;因此&#xff0c;借助数据填报系统更好地进行处理数据工作&#xff0c;不失为帮助HR减轻招聘工作量的良方。 光点数据填报系统利用传统商业报表工具进行数据…

中国热泵空调行业发展趋势及投资风险研究报告

智研瞻产业研究院专注于中国产业经济情报及研究&#xff0c;目前主要提供的产品和服务包括传统及新兴行业研究、商业计划书、可行性研究、市场调研、专题报告、定制报告等。涵盖文化体育、物流旅游、健康养老、生物医药、能源化工、装备制造、汽车电子、农林牧渔等领域&#xf…

基于springboot二手交易平台

开发工具&#xff1a;IDEA 服务器&#xff1a;Tomcat9.0&#xff0c; jdk1.8 项目构建&#xff1a;maven 数据库&#xff1a;mysql5.7 系统分前后台&#xff0c;非前后端分离 前端技术&#xff1a;vue.jselementUI等框架实现 服务端技术&#xff1a;springbootmybatis-pl…

Linux服务器中配置tomcat的服务,并通过端口8888访问

引言: Tomcat是常见的免费的web服务器,前端服务很多都是通过tomcat部署的&#xff01;所以多了解点肯定没坏处&#xff01; 一、配置端口 1.防火墙策略中配置8888端口&#xff0c;并允许策略&#xff1a; 二、安装tomcat包 1.新建tomcat文件夹 进入 /usr/local,并新建文件夹…

弹框确认按钮,请求两个接口跳转刷新页面,并使用async和await将异步改成同步的数据?

前景&#xff1a;公司前后端不分离项目&#xff0c;使用的框架element-ui较低版本的&#xff0c;弹框确定按钮加载动态按钮的loading。 //插件 npm i element-ui -S效果图: 代码: <template><div><el-button type"text" click"dialogVisible …

Hive——操作数据库创建修改表(DDL数据定义)

DDL操作1. 数据库操作1.1 创建&查询数据库1.2 修改&删除数据库2. 表操作2.1 创建表2.2 内部表和外部表2.2.1 管理表2.2.2外部表2.2.3管理表与外部表的互相转换2.3 修改表1. 数据库操作 1.1 创建&查询数据库 定义&#xff1a; CREATE DATABASE [IF NOT EXISTS] d…

IDEA settings设置技巧,最常用快捷键,让你的编译器用更加得心应手

导读 每次下载安装新的 IDEA 以后&#xff0c;都免不了对该软件进行一些优化配置&#xff0c;以方便我们在使用的时候更加得心应手。一份趁手的设置&#xff0c;无疑能让我们的工作效率事半功倍。 碍于每次自己重装 IDEA 都需要去网搜一大堆文章去设置 settings&#xff0c;所以…