成方金融科技后端部分笔试题 - 解析

news2024/12/23 7:56:20

单选题

1.以下关于JAVA自动类型转换,描述错误的是哪一项?(B)

A.byte->short

B.char->short

C.char->int

D.float->double

2.请选择运行以下代码后,系统显示的内容什么?(B)

public class Test {
    static {
        int x=1;
    }
    static int x,y;
    public static void main(String[] args) {
        x--;
        add();
        System.out.println(x+y+ ++x);
    }
    public static void add() {
        y=x++ + ++x;
    }
}

A.2

B.3

C.7

D.8

解析

静态代码块中的局部变量x仅在静态代码块内部有效,并不会影响后续的代码执行。

3.以下关于JAVA集合类,说法错误的是哪一项?(B)

A.Set存储的是不重复的数据,List存储的是可以重复的数据

B.Set检索效率高,删除和插入效率低。List检索效率低,删除和插入效率高

C.集合框架的类和接口均在java.util包中

D.任何对象加入集合类后,在取出的时候,需要进行强制类型转换

解析

Set和List的效率与具体的实现类有关。

4.下列关于类和接口描述错误的是哪一项?(A)

A.接口和抽象类都不可以被实例化,都不能拥有构造函数

B.接口只可以包含抽象方法

C.抽象类可以包含抽象方法和非抽象方法

D.类只能继承一个父类,但是可以实现多个接口

注意

从 Java 8 开始,接口可以包含默认方法 (default methods) 和静态方法 (static methods),Java 9 之后接口可以包含私有方法(private method)。

5.下面程序的运行结果是什么?(B)

public static void main(String[] args) {
        Thread t=new Thread(){
            public void run(){
                pong();
            }
        };
        t.run();
        System.out.println("ping");
    }
    static void pong(){
        System.out.println("pong");
    }

A.

ping
pong

B.

pong
ping

C.

ping
pong

pong
ping

都有可能

D.都不输出

解析

直接调用 run() 方法,实际上是在 当前主线程 中执行 run() 方法的代码,不会创建新的线程,pong() 方法会在主线程中执行,输出 “pong”,执行完run()方法,回到main线程,打印出"ping"。

6.在不考虑分区的内存容量的情况下,JDK1.8 进行大文件读写,采用哪种方式分配内存效率最好?(B)

A.ByteBuffer.allocate(size)

B.ByteBuffer.allocateDirect(size)

C.MappedByteBuffer.allocate(size)

D.new Byte[size]

7.以下关于spring描述,说法错误的是哪一项?©

A.ApplicationContext包含BeanFactory的全部功能,功能更全面

B.spring中的bean默认是单例模式,无状态、线程不安全的

C.当bean作用域为prototype时,创建容器的时候进行初始化

D.spring-core模块提供框架基础部分,包括loC和依赖注入

解析

当bean的作用域为 prototype 时,bean是在每次请求(注入、显式调用 getBean 方法)时进行初始化,而不是在创建容器的时候进行初始化。

8.下列请求路径符合restful风格是哪一项?©

A.https://example.com/api/getallUsers GET

B.https://example.com/api/User/add POST

C.https://example.com/api/users/1 DELETE

D.https://example.com/api/user/delete/1 POST

解析

RESTful 风格的核心原则:

  • 使用 HTTP 方法 (GET, POST, PUT, DELETE 等) 来表示对资源的操作。

  • 使用名词 (通常是复数) 来表示资源,而不是动词。

  • 使用 URI (统一资源标识符) 来标识资源,而不是操作。

  • 保持 URI 的简洁、一致和可预测。

9.下面说法错误的是哪一项?(D)

A.Delete删除表中数据,可以加where字句。

B.Truncate删除表中数据,再插入数据时自增长id又从1开始。

C.Drop直接删掉表。

D.Truncate删除表中数据,再插入数据时自增长id按原值递增。

10.在数据库设计中,下列哪个选项描述了第一范式(1NF)的原则?(D)

A.每个数据列都应该被赋予一个唯一的列名

B.所有数据都应该包含在单个表格中

C.所有数据都应该可以被正确存储和管理

D.所有数据都应该可以被分解成最小的数据单元

11.什么是分布式事务?©

A.将请求分发到多个后端服务器的过程

B.将数据存储在多个节点之间的过程

C.确保多个事务的一致性的过程

D.将计算任务分配给多个处理器的过程

12.Bloom Filter说法错误的是哪一项?©

A.可以用来检索一个元素是否在一个集合中

B.会出现误判情况

C.可以插入或删除集合中的元素

D.需要提供多个哈希函数

解析

Bloom Filter 不支持直接删除元素。一旦元素被插入,就无法将其从过滤器中删除。要删除元素,需要创建一个新的 Bloom Filter。

13.下面关于Redis中事务和MySQL中事务的区别,说法错误的是哪一项?(D)

A.Redis不支持事务回滚,MySQL支持事务回滚

B.Redis以Multi开始事务,以Exec执行事务的commands队列;MySQL以Begin开启一个事务,以Commit提交事务

C.Redis实现事务基于commands队列;MySQL实现事务基于undo/redo日志

D.Redis默认开启事务;MySQL默认不开启事务

解析

Redis 默认不开启事务。需要使用 MULTI 命令显式开启事务。

14.以下关于Zookeeper的Leader节点在收到数据变更请求后的读写流程说法正确的是哪一项?(D)

A.仅写入内存

B.同时写入磁盘和内存

C.先写入内存再写入磁盘

D.先写磁盘再写内存

注意

Follower 先写入磁盘,然后收到 Quorum 之后,Leader 先写入内存,后写入磁盘。如果只看 Leader 写入,选项C是对的,但是整个流程的开始是Follower先写磁盘。

15.HBase依靠什么存储底层数据?(A)

A.HDFS

B.Hadoop

C.Memory

D.MapReduce

16.以下不能有效解决过拟合的方法是哪一项?©

A.增加样本数量

B.通过特征选择减少特征数量

C.训练更多的迭代次数

D.采用正则化方法

多选题

17.下列关于equals和hashCode描述哪些是正确的?(ABCD)

A.equals和hashCode都是Object类的方法

B.equals默认比较的是对象的引用是否相等,需要比较对象属性值是否相等时可以重写equals方法

C.重写equals的同时,通常也需要重写hashCode方法,以保证相等的对象具有相同的哈希码

D.在集合类中,如HashMap等,使用哈希码来确定对象在集合中的存储位置,以便快速查找和比较对象

18.下列有关finally语句块说法哪些是正确的?(AC)

A.不管发生异常,finally块都会被执行

B.finally块在会在try或者catch块中的return语句之前执行

C.finally块如果存在return语句会覆盖try块中的return返回值

D.finally块中不可以抛异常

解析

finally块的语句在try或catch中的return语句执行之后返回之前执行,return表达式的结果会暂时保存起来。如果finally里也有return语句则覆盖try或catch中的return语句暂存的结果直接返回;若finally中没有return则返回try或者catch中暂存的return表达式的结果。

19.JAVA反射机制主要提供了以下哪些功能?(ABCD)

A.在运行时判断一个对象所属的类

B.在运行时构造一个类的对象

C.在运行时判断一个类所具有的成员变量和方法

D.在运行时调用一个对象的方法

20.在使用@Autowired注解时,如果一个类可以有多种类型,就会对Spring IoC 容器注入造成困扰,这种情况我们称之为歧义性,为解决这一问题,我们可以使用什么注解?(BD)

A.@Component

B.@Primary

C.@Resource

D.@Qualifier

21.常见的web攻击方式有哪些?(ABC)

A.SQL注入

B.XSS

C.CSRF

D.敏感信息泄露

解析

敏感信息泄露本身并不算是一种“攻击方式”,而是由多种攻击方式(如SQL注入、XSS、CSRF等)或其他原因(如不安全的存储或传输方式、内部人员疏忽等)导致的严重安全风险。

22.下面哪些属于SQL常见约束?(BCD)

A.AUTO_INCREMENT

B.PRIMARY KEY

C.FOREIGN KEY

D.UNIQUE

解析

AUTO_INCREMENT 不是一种独立的 SQL 约束类型。 它是一个列的属性或功能,通常与 PRIMARY KEY 或 UNIQUE 约束一起使用。

23.下列哪些情况需要建索引?(ABC)

A.经常用作查询条件的字段需要创建索引

B.经常需要排序、分组和统计的字段需要建立索引

C.查询中与其他表关联的字段,外键关系建立索引

D.数据重复且分布平均的字段建索引,如true, false之类

解析

例如布尔类型字段 (true/false)、性别字段 (male/female) 等,不适合创建索引。因为这些字段的索引选择性很低,即使使用了索引,数据库仍然可能需要扫描大量的数据行,索引反而会降低查询效率。

24.消息队列有哪些使用场景?(ABCD)

A.应用解耦

B.流量削峰

C.异步处理

D.消息通讯

E.远程调用

25.下面哪些数据结构可以用于实现图的存储?(AB)

A.邻接矩阵

B.邻接表

C.哈希表

D.二叉树

26.关于Zookeeper集群容错性的说法,哪些是正确的?(AD)

A.3个节点的cluster可以挂掉1个节点

B.3个节点的cluster可以挂掉2个节点

C.4个节点的cluster可以挂掉2个节点

D.2个节点的cluster不能挂掉任何1个节点

解析

Zookeeper 集群通过 Quorum 机制来保证数据的一致性和可用性。

Quorum 指的是集群中参与决策的节点数量。为了保证集群的正常运行,Zookeeper 需要保持大多数节点(即 Quorum)的正常运行。如果集群总共有 N 个节点,那么 Quorum 的大小至少为 ⌈N / 2⌉ + 1个节点(向上取整)。

判断题

27.泛型方法的声明和普通方法一样,类型参数可以使用引用型类型,也可以使用原始类型。(B)

A.正确

B.错误

解析

在Java中,泛型方法的类型参数只能使用引用类型,不能使用原始类型(如int, char, boolean等)。引用类型包括自定义类、接口以及Java提供的封装类(如Integer, Character, Boolean等)都可以用作泛型类型参数。

28.MySQL数据库中,NULL与它本身的比较可以使用=,<>或!=。(B)

A.正确

B.错误

解析

在 MySQL 中,NULL 值不能使用标准的比较运算符 =、<> 或 != 进行比较。必须使用 IS NULL 和 IS NOT NULL 运算符来进行 NULL 值的判断。

29.SAGA模式不需要事务有幂等性。(B)

A.正确

B.错误

解析

SAGA 模式为了保证在分布式环境下最终数据的一致性,需要事务(包括正向事务和补偿事务)具有幂等性。

30.RPC可以实现像调用本地服务一样调用远程计算机上的服务,WebService就是一种基于 Http协议的RPC。(B)

A.正确

B.错误

解析

WebServic可以使用RPC的机制来实现远程调用,但也可以采用其他机制(如 REST)。

31.在某些情况下,可以用位运算&,来代替%实现取模运算。(A)

A.正确

B.错误

解析

在特定条件下(当被除数是 2 的幂次方时),可以使用位运算 & 来代替取模运算 %,并且可以提高计算效率。

编程题

1.题目描述

给定一个长度为n的非负数组,找出数组中所有满足条件的子数组的个数,条件是:子数组的元素的和大于等于k。

样例1

输入

[1,2,3,4]
5

输出

5
题解
class Solution {
    public int countsubarrays(int[] arr, int k){
        int len = arr.length;
        int ans=0;
        for(int left =0;left<len;left++){ int sum="0;" for(int right="left;right">=0;right--){
                sum+=arr[right];
                if(sum&gt;=k){
                    ans++;
                }
            }
        }
        return ans;
    }
}
2.题目描述

使用递归算法,倒序输出一个整数,如输入5678,则输出8765

样例1

输入

5978

输出

"8795"
题解
class Solution {
    public String convert(int num){
        if(num&lt;10){
            return String.valueOf(num);}
        return String.valueOf(num%10)+convert(num/10);
    }
}

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

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

相关文章

图解HTTP-HTTP协议

HTTP HTTP是一种不保存状态&#xff0c;即无状态的协议。HTTP协议自身不对请求和响应之间的通信进行保存。为了保存状态因此后面也有一些技术产生比如Cookies技术。 HTTP是通过URI定位网上的资源&#xff0c;理论上将URI可以访问互联网上的任意资源。 如果不是访问特定的资源…

【Go】-限流器的四种实现方法

目录 关于限流和限流器 固定窗口限流器 滑动窗口限流器 漏桶限流器 令牌桶限流器 总结 关于限流和限流器 限流&#xff08;Rate Limiting&#xff09;是一种控制资源使用率的机制&#xff0c;通常用于防止系统过载和滥用。 限流器&#xff08;Rate Limiter&#xff09;是…

CTF_1

CTF_Show 萌新赛 1.签到题 <?php if(isset($_GET[url])){system("curl https://".$_GET[url].".ctf.show"); }else{show_source(__FILE__); }?> 和 AI 一起分析 1.if(isset($_GET[url]))检查GET请求中是否存在名为url的参数。 curl 2.curl…

[文献阅读] Unsupervised Deep Embedding for Clustering Analysis (无监督的深度嵌入式聚类)

文章目录 Abstract:摘要聚类深度聚类 KL散度深度嵌入式聚类(DEC)KL散度聚类软分配&#xff08;soft assignment&#xff09;KL散度损失训练编码器的初始化聚类中心的初始化 实验评估总结 Abstract: This week I read Unsupervised Deep Embedding for Clustering Analysis .It…

记录:virt-manager配置Ubuntu arm虚拟机

virt-manager&#xff08;Virtual Machine Manager&#xff09;是一个图形用户界面应用程序&#xff0c;通过libvirt管理虚拟机&#xff08;即作为libvirt的图形前端&#xff09; 因为要在Linux arm环境做测试&#xff0c;记录下virt-manager配置arm虚拟机的过程 先在VMWare中…

使用C语言编写UDP循环接收并打印消息的程序

使用C语言编写UDP循环接收并打印消息的程序 前提条件程序概述伪代码C语言实现编译和运行C改进之自由设定端口注意事项在本文中,我们将展示如何使用C语言编写一个简单的UDP服务器程序,该程序将循环接收来自指定端口的UDP消息,并将接收到的消息打印到控制台。我们将使用POSIX套…

Spring Boot 教程之三十六:实现身份验证

如何在 Spring Boot 中实现简单的身份验证&#xff1f; 在本文中&#xff0c;我们将学习如何使用 Spring设置和配置基本身份验证。身份验证是任何类型的安全性中的主要步骤之一。Spring 提供依赖项&#xff0c;即Spring Security&#xff0c;可帮助在 API 上建立身份验证。有很…

什么样的LabVIEW控制算自动控制?

自动控制是指系统通过预先设计的算法和逻辑&#xff0c;在无人工干预的情况下对被控对象的状态进行实时监测、决策和调整&#xff0c;达到预期目标的过程。LabVIEW作为一种图形化编程工具&#xff0c;非常适合开发自动控制系统。那么&#xff0c;什么样的LabVIEW控制算作“自动…

GFPS扩展技术原理(七)-音频切换消息流

音频切换消息流 Seeker和Provider通过消息流来同步音频切换能力&#xff0c;触发连接做切换&#xff0c;获取或设置音频切换偏好&#xff0c;通知连接状态等等。为此专门定义了音频切换消息流Message Group 为0x07&#xff0c;Message codes如下&#xff1a; MAC of Audio s…

视频直播点播平台EasyDSS与无人机技术的森林防火融合应用

随着科技的飞速发展&#xff0c;无人机技术以其独特的优势在各个领域得到了广泛应用&#xff0c;特别是在森林防火这一关键领域&#xff0c;EasyDSS视频平台与无人机技术的融合应用更是为传统森林防火手段带来很大的变化。 一、无人机技术在森林防火中的优势 ‌1、快速响应与高…

机器人路径规划和避障算法matlab仿真,分别对比贪婪搜索,最安全距离,RPM以及RRT四种算法

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 4.1贪婪搜索算法原理 4.2最安全距离算法原理 4.3RPM 算法原理 4.4 RRT 算法原理 5.完整程序 1.程序功能描述 机器人路径规划和避障算法matlab仿真,分别对比贪婪搜索,最安全距离,RPM以及R…

【论文笔记】Visual Alignment Pre-training for Sign Language Translation

&#x1f34e;个人主页&#xff1a;小嗷犬的个人主页 &#x1f34a;个人网站&#xff1a;小嗷犬的技术小站 &#x1f96d;个人信条&#xff1a;为天地立心&#xff0c;为生民立命&#xff0c;为往圣继绝学&#xff0c;为万世开太平。 基本信息 标题: Visual Alignment Pre-tra…

【附源码】Electron Windows桌面壁纸开发中的 CommonJS 和 ES Module 引入问题以及 Webpack 如何处理这种兼容

背景 在尝试让 ChatGPT 自动开发一个桌面壁纸更改的功能时&#xff0c;发现引入了一个 wallpaper 库&#xff0c;这个库的入口文件是 index.js&#xff0c;但是 package.json 文件下的 type:"module"&#xff0c;这样造成了无论你使用 import from 还是 require&…

Apache解析漏洞(apache_parsingCVE-2017-15715)

apache_parsing 到浏览器中访问网站 http://8.155.8.239:81/ 我们写一个木马 1.php.jpg 我们将写好的木马上传 会得到我们上传文件的路径 我们访问一下 发现上传成功 发现木马运行成功&#xff0c;接下来使用蚁剑连接我们的图片马 获取 shell 成功 CVE-2013-454 我们还是到…

C++-----函数与库

数学中的函数与编程中的函数对比 数学中的函数 - 数学函数是一种映射关系&#xff0c;例如&#xff0c;函数\(y f(x)x^{2}\)&#xff0c;对于每一个输入值\(x\)&#xff0c;都有唯一确定的输出值\(y\)。它侧重于描述变量之间的数量关系&#xff0c;通常通过公式来表示这种关系…

带着国标充电器出国怎么办? 适配器模式(Adapter Pattern)

适配器模式&#xff08;Adapter Pattern&#xff09; 适配器模式适配器模式&#xff08;Adapter Pattern&#xff09;概述talk is cheap&#xff0c; show you my code总结 适配器模式 适配器模式&#xff08;Adapter Pattern&#xff09;是面向对象软件设计中的一种结构型设计…

SKETCHPAD——允许语言模型生成中间草图,在几何、函数、图算法和游戏策略等所有数学任务中持续提高基础模型的性能

概述 论文地址&#xff1a;https://arxiv.org/pdf/2406.09403 素描是一种应用广泛的有效工具&#xff0c;包括产生创意和解决问题。由于素描能直接传达无法用语言表达的视觉和空间信息&#xff0c;因此从古代岩画到现代建筑图纸&#xff0c;素描在世界各地被用于各种用途。儿童…

初等函数整理

1.幂函数 2.指数函数 3.对数函数

【C/C++】手搓项目中常用小工具:日志、sqlit数据库、Split切割、UUID唯一标识

每日激励&#xff1a;“不设限和自我肯定的心态&#xff1a;I can do all things。 — Stephen Curry” 绪论​&#xff1a; 本章将写到一些手搓常用工具&#xff0c;方便在项目中的使用&#xff0c;并且在手搓的过程中一些函数如&#xff1a;日志 宏中的__VA_ARGS__接收可变参…

路径规划之启发式算法之二十一:狼群算法(Wolf Pack Algorithm,WPA)

狼群算法(Wolf Pack Algorithm,WPA)是一种模拟狼群捕食行为及其猎物分配方式的群体智能优化算法。它由吴虎胜等人在2013年提出,算法采用了基于人工狼主体的自下而上的设计方法和基于职责分工的协作式搜索路径结构。它通过抽象狼群搜索、围攻以及更新换代的三种行为方式来实…