Java面试题
文章平均质量分 87
码农巅峰
这个作者很懒,什么都没留下…
展开
-
left join on和right join on后面加条件和where 后面加条件的区别(面试题)
一:通过一个案例进行分析1):新建两张表如下,学生表,学生是否有车表2:对表进行操作和分析①:以学生表为主,查询无车的记录(left join)(结果不满足需求)通过查询结果可以分析得到:主表(TB_STUDENT)的数据全部被查询出来(无论是否满足条件),同时对辅表(TB_CAR)进行条件过滤,辅表的数据只有满足条件的才会查出来②:以车表为主,查询无车学生记录(right join)(结果不满足需求)通过查询结果可以分析得到:主表(TB_CAR)的数据全部被查询出来(无论是否满足条件)原创 2020-06-21 15:14:38 · 2280 阅读 · 0 评论 -
服务注册与发现原理(每日一题面试题)
一:服务注册与发现原理描述:服务注册与发现是是针对于三大角色的:①:服务提供者 ②:服务消费者 ③:注册中心针对他们之间的关系描述就是服务的注册与发现的运行原理:1:各微服务在服务启动的时候,将服务的网络地址等信息注册到注册中心,注册中心存储该数据2:服务消费者从注册中心查询到服务提供者的地址等信息,并通过该地址调用服务提供者的接口3:各个微服务与注册中心通过一定的机制通信(例如心跳机制...原创 2020-04-21 09:34:27 · 1019 阅读 · 0 评论 -
Redis的持久化方式(每日一题面试题)
一:Redis为什么需要持久化前置概念:持久化就是将内存中的数据写到磁盘中1:Redis的数据是存在内存中的,如果没有配置持久化,当Redis服务重启或者宕机就会造成数据丢失,所以需要配置持久化,配置持久化之后数据会被写到磁盘中,当服务重启之后,数据就会被从磁盘中恢复到内存中,从而保证数据的完整性二:Redis有几种持久化方式1:Redis有两种持久化方式,分别是RDB和AOF2:RDB...原创 2020-04-16 09:35:47 · 486 阅读 · 0 评论 -
synchronized和lock的区别(每日一题面试题)
一:synchronized和lock的区别描述:每个对象都有一个内置锁,这是synchronized锁的基础,内置锁是互斥锁,可以实现同一时间只会有一个线程在执行逻辑代码1:synchronized是关键字,是JVM层面的,lock是java类(接口)2:synchronized不能够判断是否获取锁的状态,lock可以判断是否获取到锁3:synchronized(隐式锁)可以自动释放锁(...原创 2020-04-15 09:26:03 · 2643 阅读 · 0 评论 -
RabbitMQ的面试题
一:什么是削峰限流(控制流量)1)场景:秒杀活动一般会因为流量过大,导致应用挂掉,为了解决这个问题,一般会在应用后端加入消息队列。2)作用:①:可以控制活动人数,超过一定阈值的订单直接丢弃(这就是为什么没有秒杀成功哦)(业务系统设置阈值,超过阈值限流)②:可以缓解短时间的高流量压垮应用(应用程序按照自己的最大能力获取订单)3)图片描述:二:什么是应用解耦(系统与系统之间通过第三方实...原创 2019-11-19 15:35:28 · 308 阅读 · 0 评论 -
如何保证线程的执行顺序(面试题)
一:案例数据 (模拟多线程)public class ThreadTest { static Thread t1 = new Thread(new Runnable() { @Override public void run() { System.err.println("t1 执行"); } }); st...原创 2019-11-13 23:49:51 · 466 阅读 · 0 评论 -
如何判断一个数是小数(面试题)
一:案例数据public class Math { public static void main(String[] args) { int a=10; String b="10"; String c="0.032"; double d=10; double d1=0; Double e=20...原创 2019-11-13 23:05:16 · 2510 阅读 · 0 评论 -
==和equals的区别(面试题)
一:==的用法1)基本数据类型(byte,short,char,int,long,float,double,boolean)之间的比较需要用(==),因为比较的是值2)引用数据类型(接口,类,数组)之间用(= =),比较的是内存地址,所以除非是同一个new出来的对象,他们的比较后是true,否则就是false,因为new一次,就会重新开辟一个新的堆内存空间二:equals的用法1)java...原创 2019-10-30 00:04:31 · 720 阅读 · 0 评论 -
Object有哪些方法(面试题)
clone方法protected native Object clone() throws CloneNotSupportedException;实现对象的浅拷贝,只有实现了cloneable接口才可以调用此方法,否则抛出 CloneNotSupportedException异常getClass方法public final native Class<?> getClas...原创 2019-10-29 21:49:53 · 297 阅读 · 0 评论 -
java 父子类静态方法,静态变量,构造方法,普通方法加载顺序 面试题
一:案例:父类、子类、测试类1:父类public class ParentTest { private static String var1 = initStaticParent(); private String var2 = initStringParent(); static{ System.err.println("父类静态代码块"); ...原创 2019-10-19 21:51:57 · 1605 阅读 · 0 评论 -
for循环执行流程面试题(经典)
一:for循环案例面试题public class TestForExecute { public static void main(String[] args) { int i=0; for (printExecute("A");printExecute("B")&& i<2;printExecute("C")) { ...原创 2019-10-19 19:08:46 · 991 阅读 · 0 评论 -
valotile面试题
一:valotile只能保证可见性和有序性,不能保证原子性1:可见性1):可见性:是在被valotile修饰的变量,被修改后,强制将被修改的变量同步到系统内存中,而其他cpu(即其他线程)在读取自己内部缓存中(也叫工作内存,私有的数据工作栈)的值的时候,发现是被valotile修饰的,会将内部缓存的值设为无效,然后从系统内存中读取。(后面2),3)是帮助理解)2):举例说明(不可见性):①...原创 2019-10-14 15:38:39 · 559 阅读 · 0 评论