Java笔试04

news2025/1/18 16:54:56

采用FIFO(先进先出)页面置换算法,可能会产生 抖动现象:抖动现象是指频繁地进行页面置换,导致系统资源大部分时间用于页面置换而不是实际的计算工作。FIFO算法由于其简单的先进先出特性,可能会导致频繁的页面置换,从而引发抖动现象。

外碎片:外碎片是指分配给进程的内存空间中未被利用的部分。FIFO算法不涉及内存分配,因此不会产生外碎片。

内碎片:内碎片是指内存分配中未被利用的小部分内存。FIFO算法同样不涉及内存分配,因此不会产生内碎片。

Belady现象:Belady现象是指在采用某种页面置换算法时,增加页面数反而导致页面置换次数增加的现象。FIFO算法不会出现Belady现象,因为随着页面数的增加,页面置换次数会减少或保持不变。

Java命名规则

  1. 标识符
    • 标识符可以包含字母、数字、下划线(_)和美元符号($)。
    • 标识符不能以数字开头。
  1. 类名
    • 通常使用驼峰命名法(CamelCase),每个单词的首字母大写。
    • 类名应该简洁、描述性强,并且通常是名词。
    • 示例:Car, OrderDetails, UserProfile
  1. 方法名
    • 使用驼峰命名法,第一个单词的首字母小写,后续单词的首字母大写。
    • 方法名应该是动词或动词短语。
    • 示例:calculateTax, getUserName, initializeData
  1. 变量名
    • 变量名也使用驼峰命名法,但与方法名不同,变量名的第一个单词首字母小写。
    • 变量名应该是描述性的,表明变量的用途。
    • 示例:firstName, totalAmount, activeSessions
  1. 常量名
    • 常量名通常全部使用大写字母,单词之间用下划线分隔。
    • 示例:MAX_VALUE, PI, TEMPERATURE_CELSIUS
  1. 包名
    • 包名通常全部使用小写字母。
    • 包名应该反映其在文件系统中的位置。
    • 示例:com.example.project
  1. 接口名
    • 接口名的命名规则与类名相似,通常也是名词,使用驼峰命名法,每个单词的首字母大写。
    • 接口名有时会以"able"或"ible"结尾,如Runnable, Accessible
  1. 枚举名
    • 枚举名的命名规则与类名相似,通常也是名词,使用驼峰命名法。
    • 示例:Color, Weekday
  1. 泛型
    • 泛型类型通常使用大写字母缩写作为名称。
    • 示例:T表示类型,E表示元素,K表示键,V表示值。
  1. 局部变量
    • 局部变量可以使用驼峰命名法,但更倾向于简短和描述性强。
    • 示例:i, result, temp
  1. 私有变量
    • 有时在类内部使用私有变量时,会在变量名前加一个下划线,以区别于公共变量。
    • 示例:_name, _total
  1. 避免使用Java关键字和保留字
    • 不要使用Java的保留字作为标识符。

例:

  1. String #name="aaa";
    • 在Java中,标识符不能以井号(#)开头,所以这一行编译不通过。
  1. int $age = 100;
    • 在Java中,标识符可以包含美元符号($),所以这一行可以编译通过。
  1. Double _height = 20;
    • 在Java中,类名应该首字母大写,所以正确的类名是Double而不是double。此外,Double是包装类,用于包装基本数据类型double的值,但在这里应该使用基本数据类型double。所以这一行编译不通过。
  1. double ~temp = 3.14;
    • 在Java中,标识符不能以波浪号(~)开头,所以这一行编译不通过。

使用到递归的基本算法:

  1. 排序算法
    • 归并排序(Merge Sort):通过递归地将数组分成两半,然后合并排序好的两半。
    • 快速排序(Quick Sort):通过递归地选择一个基准值,将数组分为比基准值小和大的两部分,然后对这两部分递归排序。
  1. 搜索算法
    • 二分查找(Binary Search):在有序数组中递归地查找目标值。
    • 深度优先搜索(Depth-First Search, DFS):在图或树中遍历节点,通过递归深入每个分支。
  1. 图算法
    • 深度优先搜索(DFS):在图或树中使用递归来遍历节点。
    • 广度优先搜索(Breadth-First Search, BFS):虽然通常使用队列实现,但也可以用递归实现。
    • 拓扑排序(Topological Sort):在有向无环图(DAG)中,使用递归选择入度为0的节点。
  1. 动态规划算法
    • 某些动态规划问题,如斐波那契数列、组合问题等,可以使用递归加备忘录(Memoization)技术。
  1. 分治算法
    • 许多分治算法,如归并排序、快速排序、二分查找等,本质上都是递归的。
  1. 树遍历
    • 前序遍历(Pre-order Traversal)
    • 中序遍历(In-order Traversal)
    • 后序遍历(Post-order Traversal)
  1. 回溯算法
    • 用于解决组合问题、排列问题、划分问题等,通过递归地尝试每一种可能的候选解,并回溯。
  1. 数学计算
    • 阶乘(Factorial)
    • 斐波那契数列(Fibonacci Sequence)
    • 幂(Power)计算,如 xnxn
  1. 字符串处理
    • 字符串反转
    • 检查回文字符串
  1. 递归下降解析器
    • 用于编译器设计,用于语法分析。

端口号:

53 - 这是DNS服务的端口号。

80 - 这是HTTP协议的标准端口号。

21 - 这是FTP协议的端口号。

23 - 这是Telnet协议的端口号。

  1. final类
    • final类不能被继承。一旦你将类声明为final,它就不能有子类。
  1. 运行时异常
    • 运行时异常(RuntimeException)是Java中那些不是由编译器强制检查的异常。这意味着你可以选择捕获它们或者不捕获。
  1. try块里的return和finally,执行顺序
    • try块中有一个return语句时,finally块将在try块中的return执行之前执行。finally块中的代码无论是否有异常抛出都会被执行。finally块执行完毕后,try块中的返回值才会被返回。
  1. 垃圾回收线程的优先级最高吗
    • 不一定。垃圾回收(GC)线程的优先级取决于具体的JVM实现和垃圾回收策略。在某些JVM中,GC线程可能有较高的优先级,但这并不是一个普遍规则。
  1. 子类强转为父类的话,执行哪个类的方法
    • 当子类对象被强制类型转换为父类时,你只能调用父类中定义的方法和属性。子类特有的方法不能通过父类的引用来调用。
  1. 子类如何继承父类构造函数
    • 子类不能直接继承父类的构造器。但是,子类的构造器可以通过super关键字调用父类的构造器。
  1. string作为函数参数的话,修改能否传出函数
    • 在Java中,String是不可变的。即使你在函数内部修改了String对象,这个修改也不会反映到函数外部。函数外部看到的仍然是原始字符串。
  1. random的nextInt
    • Random类的nextInt()方法返回一个随机的整数。你可以传递一个整数参数给nextInt(int bound)来限制随机数的范围。
  1. forward和redirect
    • forward是服务器端的重定向,请求从客户端直接转发到服务器的另一个资源。
    • redirect是客户端的重定向,服务器告诉客户端去请求另一个URL。
  1. 用例的几种关系,例如聚合、包含
    • 在用例图中,用例之间的关系包括包含(include)、扩展(extend)、泛化(generalization)等。
    • 包含关系表示一个用例(基础用例)在其执行过程中会调用另一个用例(被包含用例)。
    • 扩展关系表示一个用例在某些条件下可以增加额外的行为到另一个用例(被扩展用例)。
  1. 分布式数据库的CAP原则
    • CAP原则指的是分布式系统最多只能同时满足以下三个属性中的两个:一致性(Consistency)、可用性(Availability)和分区容忍性(Partition tolerance)。
    • 一致性意味着数据在多个节点间保持同步。
    • 可用性意味着系统在任何时候都能响应用户的请求。
    • 分区容忍性意味着系统能够容忍网络分区,即网络中的一部分节点无法与其他节点通信。

在操作系统中,程序的装入方式决定了程序在内存中的存储方式。

动态运行时装入

  • 这种方式涉及到在程序执行时动态分配内存,这可能允许程序部分被装入到不连续的内存区域。

绝对装入

  • 绝对装入意味着程序被装入到内存的一个固定位置,通常要求程序在一块连续的内存区域中。

动态链接时装入

  • 动态链接允许程序在运行时链接某些库,但这并不意味着程序会被装入到不连续的内存区域。动态链接通常还是需要一定的内存连续性。

可重定位装入

  • 可重定位装入是指程序可以被装入到内存的任何位置,但这通常也是在连续的内存区域中进行。

在内存只有4KB的ATM机上,对2,000,000笔交易进行排序时,需要考虑排序算法的内存使用效率和数据的特性。考虑到数据量远超过内存容量,需要使用一种能够利用外部存储(如硬盘)的排序算法。(C

A. 桶排序

  • 桶排序在处理大量数据时非常有效,特别是当数据分布比较均匀时。它通过将数据分散到多个“桶”中,然后对每个桶内的数据进行排序。桶排序适合于内存不足的情况,因为它可以减少对内存的需求。

B. 堆排序

  • 堆排序是一种高效的内部排序算法,它使用数组来维护堆结构。但是,对于大量数据且内存有限的情况,堆排序并不理想,因为它需要较多的内存来维护堆。

C. 归并排序

  • 归并排序是一种高效的外部排序算法,适合于数据量大于内存容量的情况。它通过将数据分成较小的部分进行排序,然后合并这些部分。归并排序适合于内存有限的情况。

D. 插入排序

  • 插入排序是一种简单的内部排序算法,它适合于小数据集或基本有序的数据集。然而,对于大量数据,插入排序效率较低,且内存使用上没有特别优势。

分布式事务的2PC(两阶段提交)模式是一种确保分布式系统中所有节点在提交事务前达成一致的协议。

A. 将事务处理的同步阻塞操作变为异步操作

  • 错误。2PC模式实际上是一个同步阻塞协议。在第一阶段(准备阶段),事务协调者(事务经理)要求所有参与者准备提交或中止事务,所有参与者必须等待所有其他参与者的响应。

B. 以牺牲可用性为代价来保证数据的一致性

  • 正确。2PC确保了事务的原子性,在整个准备阶段,所有参与者都被锁定,这可能导致资源利用率低和性能下降,特别是在网络分区或参与者失败的情况下。

C. 适用于高并发场景

  • 错误。2PC由于其同步阻塞的特性,在高并发场景下可能会导致性能瓶颈。

D. 将分布式事务拆分成本地事务后再进行处理

  • 错误。2PC并不是将分布式事务拆分成本地事务,而是通过协调者来确保所有参与者在同一时间提交或回滚事务。


 

近日总结:

饮一壶茶,嗅嗅浓郁的兰花香,欣赏澄澈的茶色

思来想去,还是提笔写了下来。

果然,人在情绪低迷的时候最容易变成文艺的支配者。

不过在此之前,还是要说一句,人总是在给自己找罪受。

以前总是听到人生百色这四个字,现在看来,人生确实是百色的。

人生总有各种酸甜苦辣咸,喜怒哀愁。

人这个生物很奇怪,明知道撞上墙会被挡下,还会受伤,可还是会拼了命的去撞。

好像这样撞下去墙真的会被自己撞破一个洞似的。

而养伤的这段时间又是叫苦不迭,又是悔恨,又是追悔莫急,可当再次看到那面墙,还是会义无反顾的撞上去,再次变得头破血流。

仔细品味一下,人生好像真的如此。

最近有些迷茫,不仅是对未来感到迷茫,还对自己感到迷茫。

我觉得自己就像是海上浮浮沉沉的浮标,被一根细细的绳子束缚,头顶上黑云重重的压下来,喘不过气。

我突然不明白了人生的意义在哪里,即便是突然有一天有了一份自己心仪的工作,但是一个人来到陌生的城市,要在这里生活很多年。

那很多年之后呢,是又陷入迷茫还是会有另一番新的感悟。

这些我都不知道,目前的我不知道,我还在处于最开始迷茫的这个阶段。

就好像是人生突然失去了方向,指明方向的灯塔突然坍塌。

我只记得了来的时候的方向与预计奔向的方向,却遗忘了此刻的我最想要的是什么。

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

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

相关文章

消费即赚,循环购物模式引领潮流

在电商界,一种全新的购物模式正悄然兴起——循环购物模式。听起来有些不可思议?消费满额还能获得高额返利,甚至每日领取现金?这背后究竟隐藏着怎样的秘密? 一、循环购物模式初印象 想象一下,您在某个电商平…

【OpenGL】创建窗口/绘制图形

需要云服务器等云产品来学习Linux可以移步/-->腾讯云<--/官网&#xff0c;轻量型云服务器低至112元/年&#xff0c;新用户首次下单享超低折扣。 目录 一、创建窗口 1、代码流程图 2、运行结果 3、代码 二、三角形 1、顶点缓冲对象&#xff1a;Vertex Buffer Object…

Redis --- 第四讲 --- 常用数据结构 --- Hash、List

一、Hash哈希类型的基本介绍。 哈希表&#xff1a;之前学过的所有数据结构中&#xff0c;最最重要的。 1、日常开发中&#xff0c;出场频率非常高。 2、面试中&#xff0c;非常重要的考点。 Redis自身已经是键值对结构了。Redis自身的键值对就是通过哈希的方式来组织的。把…

行业认可 | 钛铂数据喜获2024爱分析 · 数据智能优秀厂商奖

近日&#xff0c;TapData 凭借在数据智能领域的卓越表现&#xff0c;成功入选2024爱分析数据智能优秀厂商榜单。 9月13日&#xff0c;2024爱分析第六届数据智能高峰论坛圆满举办。作为此次论坛的重磅环节&#xff0c;正式公布了“2024爱分析数智卓越企业奖”“2024爱分析数据智…

汽车建模用什么软件最好?汽车建模渲染建议!

在汽车建模和渲染领域&#xff0c;选择合适的软件对于实现精确的设计与高质量的视觉效果至关重要。那么不少的汽车设计师如何选择合适的建模软件与渲染方案呢&#xff0c;一起来简单看看吧&#xff01; 一、汽车建模用软件推荐 1、Alias Autodesk旗下的Alias系列软件是汽车设…

代理 IP 在 AI 爬虫中的关键应用

现如今&#xff0c;人工智能&#xff08;AI&#xff09;的发展日新月异&#xff0c;而数据作为驱动 AI 发展的关键要素&#xff0c;其重要性不言而喻。AI 爬虫作为获取大量数据的重要工具&#xff0c;在数据收集过程中发挥着至关重要的作用。而代理 IP 在 AI 爬虫中有着广泛而重…

flutter实现头像覆盖轮播滚动组件

效果如下: 支持自定义图片大小 支持设置覆盖比例 支持设置最大展示数量 支持设置缩放动画比例 支持自定义动画时长、以及动画延迟时长 支持当图片List长度小于或者登录设置的最大展示数量时禁用滚动动画。 import ../../library.dart;class CircularImageList extends Sta…

2024全网最详细CTF入门指南、CTF夺旗赛使用工具及刷题网站

2024年最新的CTF&#xff08;Capture The Flag&#xff0c;夺旗赛&#xff09;入门指南如下&#xff0c;涵盖了入门思路、常见题型及练习网站推荐&#xff0c;帮助你逐步了解并提升在CTF中的解题技巧。 如果你对网络安全入门感兴趣&#xff0c;我给大家整理好了相关资料&#…

基于SpringBoot+Vue的蜗牛兼职网的设计与实现(带文档)

基于SpringBootVue的蜗牛兼职网的设计与实现&#xff08;带文档) 开发语言:Java数据库:MySQL技术:SpringBootMyBatisVue等工具:IDEA/Ecilpse、Navicat、Maven 该系统主要分为三个角色&#xff1a;管理员、用户和企业&#xff0c;每个角色都有其独特的功能模块&#xff0c;以满…

【从零到一的笔试突破】——day1笔试巅峰(6道笔试题)ACM模式让笔试更有感觉

文章目录 数字统计&#xff08;数学模拟&#xff09;两个数组的交集&#xff08;哈希&#xff09;点击消除&#xff08;栈&#xff09;牛牛的快递&#xff08;模拟&#xff09;最小花费爬楼梯&#xff08;动态规划&#xff09;数组中两个字符串的最小距离&#xff08;滑动窗口o…

智慧社区Web平台:Spring Boot技术实现

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…

SQL进阶技巧:如何使数组中的固定参数动态化? | SQL中的滑动窗口如何实现?

目录 0 场景描述 1 数据准备 2 实现思路 问题2&#xff1a;如何动态获取年份&#xff0c;年份能够自动更新&#xff1f; 3 小结 如果觉得本文对你有帮助&#xff0c;想进一步学习SQL语言这门艺术的&#xff0c;那么不妨也可以选择去看看我的博客专栏 &#xff0c;部分内…

【高频SQL基础50题】46-50

SQL时刻。 目录 1.至少有5名直接下属的经理 2.确认率 3.游戏玩法分析 IV 4.部门工资前三高的所有员工 5.查找拥有有效邮箱的用户 1.至少有5名直接下属的经理 子查询。 1.先找出至少有5名直接下属的经理号managerId 2.根据经理号找到对应名字 # Write your MySQL query…

【unity小技巧】unity C#对DateTime的常见操作,用于处理日期和时间

在Unity中&#xff0c;DateTime 是一个非常有用的结构&#xff0c;用于处理日期和时间。以下是一些常见的 DateTime 操作示例&#xff1a; 1. 获取当前时间 DateTime now DateTime.Now;2. 创建特定日期和时间 DateTime specificDate new DateTime(2023, 10, 15, 14, 30, 0…

电力交易员职业标准-----达到基本入行标准(四级/中级)题库-----职业鉴定理论篇-----单选题目6~题目10-----持续更新

电力交易员职业标准-----达到基本入行标准&#xff08;四级/中级&#xff09;题库-----职业鉴定理论篇-----主目录-----持续更新https://blog.csdn.net/grd_java/article/details/143033828 2024 年电力交易员(中级工)职业鉴定理论考试题库 注意&#xff1a;每道题下面都会放相…

深度学习-机器学习与传统编程区别

在当今数字化时代&#xff0c;机器学习成为了技术领域的热门话题。本文将介绍机器学习与传统编程的不同之处&#xff0c;以及机器学习在解决复杂问题和实现智能化的巨大潜力&#xff0c;从处理方式、开发过程、驱动方式、技术要求和应用场景等5个方面进行介绍。 1、处理方式 机…

高效计算!|海鸥优化算法SOA理论与实现(Matlab/Python双语言教程)

文章来源于我的个人公众号&#xff1a;KAU的云实验台&#xff0c;主要更新智能优化算法的原理、应用、改进 MATLAB、PYTHON 海鸥是自然界中最常见的一类海鸟&#xff0c;主要以群居的生存方式遍布在各大海港、湖泊、河流地区。它们拥有较高的群集智慧&#xff0c;每到冬季&a…

冲锋衣市场洞察:全方位数据分析与趋势展望

冲锋衣整体数据分析 一. 概述 本报告基于从淘宝商品搜索接口和淘宝精确月销量接口中提取的数据&#xff0c;分析了前百个品牌在销售额上的占比情况。分析涵盖了销售额和占比的数据&#xff0c;为决策提供了依据。&#xff08;数据获取时间&#xff1a;2024.10.08&#xff09;…

数据分析方法(回归分析,决策树与神经网络,提升树,时间序列分析,假设检验,用户画像,竞品分析)等

1.回归分析 回归分析是一种统计方法&#xff0c;用于探索自变量&#xff08;预测变量&#xff09;和因变量&#xff08;目标变量&#xff09;之间的关系。它可以帮助预测变量的变化对目标变量的影响大小。例如&#xff0c;简单线性回归用于分析两个变量之间的线性关系&#xf…

快速创建一个vue项目并运行

前期准备工作: 1.安装node 2.安装npm 3.设置淘宝镜像 4.全局安装webpack 5.webpack 4.X 开始&#xff0c;需要安装 webpack-cli 依赖 6.全局安装vue-cli 正文开始: 1.创建项目 ,回车 vue init webpack vue-svg > Project name vue-demo 项目名称 回车 > Pro…