java 八股文 基础 每天笔记随机刷

@Component 和 @PostConstruct 搭配使用

  • 被@Component注解标识的类在应用程序启动时会被实例化,并由Spring容器进行管理。
  • @PostConstruct是一个Java注解,用于标记一个方法在类被实例化后自动执行。该方法必须是非静态的,没有参数,且不能抛出异常。

他们搭配起来使用在同一个类中,会让被@PostConstruct修饰的方法,自动执行,从而实现了,项目启动后init方法的重写的功能。

其他补充:
1. 自动扫描:使用@ComponentScan注解配置的包路径下,Spring框架会自动扫描带有@Component注解的类,并将其实例化为Bean。
2. 依赖注入:被@Component注解标识的类可以使用Spring的依赖注入机制,通过@Autowired注解将其他组件注入到自己的属性或构造函数中。* @Component使用了对象池吗?
* 答:没有。

git拉远程指定分支

git checkout -t origin/远程分支名
这样可以拉远程某分支,即便之前已经拉了其他分支,也可以拉新分支,并且新分支会自动迁出。

DTO

  • dto所处位置,主要是用于业务逻辑层service和表示层servlet之间的数据传输.(图片是引用的)

ps -ef | grep 8080

  1. ps -ef是查询所有进程信息的命令
  2. | 是管道,可以把前面命令的输出传递给后面命令作为输入
  3. grep是查询命令,搜索的作用。

hashMap和TreeMap

    • HashMap是通过hashcode()对其内容进行快速查找的;HashMap中的元素是没有顺序的;
    • TreeMap中所有的元素都是有某一固定顺序的
    • HashMap和TreeMap都不是线程安全的;
    • HashMap继承AbstractMap类,覆盖了hashcode() 和equals() 方法,以确保两个相等的映射返回相同的哈希值;
    • TreeMap继承SortedMap类;他保持键的有序顺序;
    • HashMap:基于hash表实现的;
    • TreeMap:基于红黑树实现的;TreeMap就没有调优选项,因为红黑树总是处于平衡的状态;
    • HashMap:适用于Map插入,删除,定位元素;
    • TreeMap:适用于按自然顺序或自定义顺序遍历键(key);

ArrayList 和 Vector

  1. Vector 使用了 Synchronized 来实现线程同步,是线程安全的,而 ArrayList 是非线程安全的。

Runnable 接口 和 Callable 接口

  1. Runnable 接口 没有返回值 , Callable 接口有返回值

  2. Runnable 接口 有抛异常 , Callable 接口没有抛异常

  3. Runnable 接口 的方法是 run ( ) , Callable 接口的 方法是 call ( )

     public class CASTest666 {private int ticket = 50;private int i = 1;public synchronized void sale() {if (ticket > 0) {System.out.println(Thread.currentThread().getName() + "再卖第" + "\t" + i++ + "张票还有" + --ticket + "\t" + "张票");}}}class TestMythread {public static void main(String[] args) throws ExecutionException, InterruptedException {CASTest666 casTest666 = new CASTest666();FutureTask futureTask = new FutureTask<>(new Callable<Object>() {@Overridepublic String call() throws Exception {for (int i = 0; i < 50; i++) {casTest666.sale();}return "我是callable实现的多线程的操作";}});Thread thread = new Thread(futureTask, "A");thread.start();// 运行成功后获得返回值:调用get方法System.out.println(futureTask.get());}}
    

final修饰符

  1. 该修饰符是常量修饰,但是如果是引用类型,比如ArrayList并不能让arrayList不能增添数据。

    `
    private final ArrayList list = new ArrayList();

     test(){list.add(1);//合法,不报错}
    

    `

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java八股文面试[多线程]——线程池拒绝策略

四种线程池拒绝策略&#xff08;handler&#xff09; 当线程池的线程数达到最大线程数时&#xff0c;需要执行拒绝策略。拒绝策略需要实现 RejectedExecutionHandler 接口&#xff0c;并实现 rejectedExecution(Runnable r, ThreadPoolExecutor executor) 方法。不过…

16.CSS菜单悬停特效

效果 源码 <!DOCTYPE html> <html> <head> <title>Creative Menu Item Hover Effects</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body><section><…

Gopher进阶神器:拥抱刻意练习,从新手到大师。

发现一个非常友好的工具&#xff0c;帮助我们回顾练习过程&#xff0c;设定目标&#xff0c;并提供丰富多样的Gopher主题练习题。 刻意练习&#xff1a;从新手到大师。 Carol 心理学家 Carol Dweck 做过一个实验&#xff0c;她找了一些十岁的孩子&#xff0c;随机分成两组&a…

25.选择排序,归并排序,基数排序

目录 一. 选择排序 &#xff08;1&#xff09;简单选择排序 &#xff08;2&#xff09;堆排序 二. 归并排序 三. 基数排序 四. 各种排序方法的比较 &#xff08;1&#xff09;时间性能 &#xff08;2&#xff09;空间性能 &#xff08;3&#xff09;排序方法的稳定性能…

Web网站服务器

目录 一、什么是Apache? 二、虚拟目录是什么&#xff1f; 三、Apcahe相关配置文件 四、httpd.conf主配置文件的常用配置参数 五、Web网站配置案例 5.1搭建基于用户的个人主页网站 5.2、配置虚拟目录 5.3、配置虚拟主机 5.3.1搭建两个基于IP地址的虚拟主机 5.3.2搭建两个基于域…

国标GB28181视频平台EasyGBS国标视频云平台级联到EasyCVR,上级平台无法播放通道视频的问题解决方案

EasyGBS国标视频云平台是基于国标GB28181协议的视频能力兼服务平台&#xff0c;可实现的视频能力包括将设备通过国标GB28181协议接入、流媒体转码、处理及分发、直播录像、语音对讲、云存储、告警、平台级联等功能。其中&#xff0c;平台级联功能是指平台与平台之间可以通过国标…

【ES6】Promise.race的用法

Promise.race()方法同样是将多个 Promise 实例&#xff0c;包装成一个新的 Promise 实例。 const p Promise.race([p1, p2, p3]);上面代码中&#xff0c;只要p1、p2、p3之中有一个实例率先改变状态&#xff0c;p的状态就跟着改变。那个率先改变的 Promise 实例的返回值&#…

使用Python写入数据到Excel:实战指南

在数据科学领域&#xff0c;Excel是一种广泛使用的电子表格工具&#xff0c;可以方便地进行数据管理和分析。然而&#xff0c;当数据规模较大或需要自动化处理时&#xff0c;手动操作Excel可能会变得繁琐。此时&#xff0c;使用Python编写程序将数据写入Excel文件是一个高效且便…

比较器的工作原理及性能指标介绍

一、什么是比较器 比较器的功能是比较两个或更多数据项&#xff0c;以确定它们是否相等&#xff0c;或者确定它们之间的大小关系和排列顺序&#xff0c;这称为比较。可以实现此比较功能的电路或设备称为比较器。比较器是将模拟电压信号与参考电压进行比较的电路。比较器的两个…

TikTok网红营销之谜:为何成功程度参差不齐?

近年来&#xff0c;随着社交媒体的迅猛发展&#xff0c;TikTok作为一款以短视频为主要内容形式的应用&#xff0c;在全球范围内迅速走红。不仅个人用户在TikTok上分享自己的创意&#xff0c;越来越多的品牌也开始借助TikTok网红进行营销推广。然而&#xff0c;尽管众多人都在尝…

苍穹外卖01-项目概述、环境搭建

项目概述、环境搭建 课程内容 软件开发整体介绍苍穹外卖项目介绍开发环境搭建导入接口文档Swagger 项目整体效果展示&#xff1a; 管理端-外卖商家使用用户端-点餐用户使用当我们完成该项目的学习&#xff0c;可以培养以下能力&#xff1a; 1. 软件开发整体介绍 作为一名软…

【力扣】62. 不同路径 <动态规划>

【力扣】62. 不同路径 一个机器人位于一个 m m m x n n n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下图中标记为 “Finish” &#xff09;。问总共有多少条…