首页 > 编程语言 >《JAVA软件工程师》理论考试【一】

《JAVA软件工程师》理论考试【一】

时间:2024-12-02 12:29:10浏览次数:10  
标签:同步 JAVA 工程师 代码 遍历 线程 方法 可以 考试

《JAVA软件工程师》理论考试【一】

  1. 同步方法和同步代码块的区别是什么?
  1. 首先同步方法和同步代码块都有锁,同步方法需要创建一个任意对象,并且要把对象放入同步代码块中的参数中
  2. 同步方代码块定义,只需要把共享的代码放入run方法中的同步代码块中即可,(需要创建任意对象),同步方法定义使用,需要把共享的代码单独拿出来,放入方法中,在run方法中调用即可。
  3. 虽然他们都有锁,但是同步代码块的锁是创建的一个任意对象,而同步方法的锁是this
  1. 概括的解释下线程的几种状态。

新建状态,受阻塞,运行状态,休眠状态,等待状态(&唤醒),死亡状态

新建状态,在开启线程的时候,CPU可能会抢占受阻塞,然后再运行,再运行的时候如果遇到休眠状态,在休眠状态的同时可能会受阻塞,其他线程运行,自动休眠后如果某条线程抢到CPU,那么就开始运行,运行结束后,进入死亡状态结束,在运行时线程也可能收到阻塞,等待状态,在等待的时候,也可能收到阻塞,唤醒后线程运行

  1. 创建线程有几种不同的方式?你喜欢哪一种?为什么?

创建线程有三种方式,继承,实现接口(Runnable)&collect(需要用到线程池)

我最喜欢实现Runnable接口的方式

原因:(1)首先实现Runnable接口的方式,避免了单继承的局限性

           (2)把线程任务单独分离了出来,把线程任务和线程对象进行了解耦

4. List、Map、Set 三个接口,存取元素时,各有什么特点?

List:在存储元素时,可以存储重复的元素,有序集合(存储时候是什么顺序,取值时就是什么顺序)有索引,取元素时,因为有索引,可以使用普通for循环遍历,还可以使用增强for和迭代器

Map:(1)是一个双列集合,一个元素有两个值(key&value)

  1. key值和value值数据类型可以相同,也可以不同
  2. Key值不能重复,value值可以重复
  3. 遍历,可以用keySet,返回key值,也可以用entitySet,返回key值和value值,这两种方法都可用迭代器和增强for进行遍历

Set:(1)没有索引,不能用普通for循环遍历

  1. 不可以存储重复元素
  2. 遍历:可以使用增强for,也可以使用迭代器
  1. Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?

用equals方法区分

因为==比较的是内存地址,而equals方法是比较具体的值

  1. Set 和 List的区别?

Set:没有索引(不可用普通for循环遍历),不可以存储重复元素

List:有索引(可以用普通for循环遍历),可以存储重复元素

  1. 数组(Array)和列表(ArrayList)有什么区别?什么时候应该使用Array而不是ArrayList?

数组:必须指定数组长度,不可随意改变值,有索引,可以使用普通for循环和增强for遍历

ArrayList:底层是数组,不用指定数组长度,可以修改值,可以使用普通for循环和增强for遍历,便于查询,也可以删除某个元素

当查询数据频繁时,数据较多时,用ArrayList集合,

当数据较少时,并且不修改和删除时,用数组

通常用arrayList集合,便于操作

  1. JAVA 语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try 块中可以抛出异常吗?

Throws:是在遇到异常时,抛出异常

Throw:在指定内容中,手动设置抛出异常

Try:可能会发生异常的代码块

Catch:处理异常并打印,记录日志

Finally:无论有没有异常,都会执行的代码,通常用于资源的释放,不可单独使用

可以

  1. 如何将数值型字符转换为数字?如何将数字转换为字符?如何取小数点前两位并四舍五入?

用intvalue方法就可以装换为数字

在数字后面加双引号即可

Math.round():此方法时将数字进行四舍五入

  1. 什么是线程同步 如何实现线程同步?

当一个线程在进入run方法时,就会带着锁进入,(其他线程在进入时,没有锁时不能进入的)然后运行,运行完后归还锁,下一条线程拿着锁继续运行

创建一个任意对象,然后用sytuehdfaly代码块,参数写任意对象

  1. CSS中class和id的区别是?

Class:在同一网页中可以使用多次

Id:在同一网页只能使用一次

  1. 写出以下 html 标签的含义:input form style table b img

Input:是单标签,表单的标签

Table:是表格的意思

Img:是图片

Style:内联样式

  1. 列出HTML里的input标签的type属性有那些值?(最少5个)

Text:文本框

Password:密码框

Button:普通按钮

Reset:重置按钮

Radio:单选框

标签:同步,JAVA,工程师,代码,遍历,线程,方法,可以,考试
From: https://blog.csdn.net/2301_76592091/article/details/144185322

相关文章

  • 断点续传(上传)JAVA版
    需求:大文件上传,批量上传,断点续传,文件夹上传,大文件下载,批量下载,断点下载,文件夹下载文件夹:上传下载需要支持层级结构,采用非压缩方式文件大小:100G前端:vue2,vue3,vue-cli,jquery,html,webuploader后端:JSP,springbootweb服务:tomcat数据库:mysql,oracle,达梦,国产化数据库服务......
  • Java 基础之序列化和反序列化
    一、引言Java序列化和反序列化是软件开发中的重要概念,在数据存储、网络通信和远程调用等场景中发挥着关键作用。本文将深入探讨Java基础序列化和反序列化的概念、实现方式、应用场景以及注意事项。一、引言Java序列化和反序列化在软件开发中具有重要地位。它允许将Jav......
  • 如何运用Java爬虫获得1688商品详情数据
    在电商领域,获取商品数据是进行市场分析和竞争情报收集的重要步骤。1688作为中国领先的B2B电商平台,其商品数据对于商家来说具有极高的价值。本文将详细介绍如何使用Java编写爬虫程序,以合法合规的方式获取1688平台的商品信息,并提供详细的代码示例。1.环境准备在开始编写爬虫......
  • 如何确保爬虫程序的稳定性和效率:Java爬虫实践
    在数字化时代,爬虫程序已成为获取网络数据的重要工具。然而,确保爬虫的稳定性和效率是开发过程中的关键挑战。以下是一些实用技巧和最佳实践,结合Java代码示例,帮助您提高爬虫的性能和稳定性。1.异常处理异常处理是确保爬虫稳定性的关键。通过捕获和处理可能发生的异常,可以避免......
  • JavaScript 运算符
    JavaScript 运算符运算符=用于赋值。运算符+用于加值。运算符=用于给JavaScript变量赋值。算术运算符 + 用于把值加起来。实例指定变量值,并将值相加:y=5;z=2;x=y+z;在以上语句执行后,x 的值是:7尝试一下»JavaScript算术运算符与/或值之间的算术......
  • Java Script常见问题解答
    1.在写js异步操作的时候,有时候需要前一个操作完成后再执行下一个操作,这个时候需要在当前js方法开头新增:$.ajaxSettings.async=false;2.有时候一段时间内重复执行某个方法导致偶尔会有进入不进去的情况,此时需要在方法后添加时间戳vartimestamp=newDate().getTime();img.s......
  • 庖丁解java(一篇文章学java)
    (大家不用收藏这篇文章,因为这篇文章会经常更新,也就是删除后重发) 一篇文章学java,这是我滴一个执念...当然,真一篇文章就写完java基础,java架构,java业务实现,java业务扩展,根本不可能.所以,这篇文章,就是一个索引,索什么呢?  请看下文...关于决定开始写博文的介绍......
  • 你认为前端工程师真正的价值体现在哪里?
    前端工程师的真正价值体现在将设计理念、产品需求和用户体验转化为可交互的、功能完善的网页或应用程序。这不仅仅是简单的“写代码”,而是需要多方面的能力和深刻的理解:用户体验至上:前端工程师是用户与产品交互的桥梁,他们需要深入理解用户行为和需求,将抽象的设计转化为用户......
  • 电影售票管理系统|Java|SSM|JSP| 前后端分离
    【重要1⃣️】前后端源码+万字文档+部署文档            【包含内容】【一】项目提供非常完整的源码注释【二】相关技术栈文档【三】源码讲解视频                     【其它服务】【一】可以提供远程......
  • 分类算法学业警示管理系统|Java|SSM|JSP| 前后端分离
    【重要1⃣️】前后端源码+万字文档+部署文档            【包含内容】【一】项目提供非常完整的源码注释【二】相关技术栈文档【三】源码讲解视频                     【其它服务】【一】可以提供远程......