
Java
文章平均质量分 51
眼红de熊熊
这个作者很懒,什么都没留下…
展开
-
Java并发编程核心面试题小总结
既然是面试就应该具备面试题回答的思维方式,能在短时间内把面试官的问题口语化的完整表达出来。近期结合自己所学的多线程JUC相关知识点,对Java并发编程几个常见问题,尝试着口语化地写出来。我觉得可以在总—分的思维方式回答的基础上,发散性的补充与问题相关的知识点。一、Java如何开启线程?怎么保证线程安全?Java如何开启线程?1、一谈到线程我首先想到是线程的使用口诀:线程操作资源类,我们开启多线程的主要目的是操作系统中的共享资源。一般来说,开启线程的方式一般情况下主要有4种,分别为:(1)继承Thre原创 2021-04-29 11:22:28 · 192 阅读 · 0 评论 -
Java的跨平台特性—Compile once, run anywhere
我们常说的Compile once, run anywhere,也就是Java的跨平台特性,Java的跨平台特性与JVM的存在密不可分,理解如下。1、跨平台特性的解释其实Java语言本身与其他的编程语言没有特别大的差异,那么相同的字节码文件如何在不同的平台上运行呢(不同平台的机器码指令不同)?并不是说Java语言本身就可以跨平台,而是在不同的平台都有可以让Java语言运行的环境(JVM)。举个例子:我们日常家庭的用电电压220V(.class字节码文件),但是不同的用电器(操作系统平台)能承受的最大电原创 2021-04-23 11:27:30 · 404 阅读 · 0 评论 -
剑指 Offer 04. 二维数组中的查找
问题描述:现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30]]给定 target = 5,返回 true。给定 target = 20,返回 false。解决思路:数组的快速查找问题,很多时候我们使用的是二分查找,二分查询的思路其实有点像高数的夹逼准则,左边比目标大,右边比目原创 2021-04-23 10:01:53 · 101 阅读 · 0 评论 -
剑指 Offer 03. 数组中重复的数字
数据结构与算法笔试题可以说是进入互联网大厂的敲门砖,在短短的时间内如何快速做出来我觉得最重要的是快速确定正确的结题方法是最重要的,如果一开始就陷入了错误的方法思考,最后无疑是竹篮打水,铩羽而归。问题描述:找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3解决思路:原创 2021-04-23 08:36:18 · 129 阅读 · 0 评论 -
JAVA程序的运行机制—01
一 、高级语言的运行机制高级语言的运行机制主要分为两大类,编译型语言和解释型语言两种。1、编译性语言(1)不能跨平台使用(2)可以针对特定的平台进行优化,效率较高2、解释性语言(1)把编译和解释混合到一起同时进行,可跨平台使用,方便移植。(2)每次执行都需要编译,效率较低。二、Java语言的运行机制Java语言既不是纯粹的编译型语言,也不是纯粹的解释型语言。Java程序的执行必须经过先编译后解释两个步骤。编译:是指将我们编写的Java源文件翻译成JVM认识的class文件,在这个过程原创 2020-08-29 15:30:27 · 195 阅读 · 0 评论 -
基于springboot的三层架构设计思路(前后端分离)
基于springboot的三层架构设计思路(前后端分离)近期学习了一下基于springboot的三层架构的搭建方法,为了能起到举一反三的效果和作用,现在对springboot的三层架构的设计思路进行一个大概的总结,主要分为六个步骤(简称六脉神剑),所记如下。一、建moudel项目开始时使用IDEA创建maven工程,为了更加契合分布式微服务架构的搭建,这里建立聚合类型的maven工程。工程目录如下。从目录中可以看到过滤掉了.idea文件和.iml文件(可以理解为隐藏了起来),可以通过setting原创 2020-08-21 00:03:53 · 9043 阅读 · 0 评论