面试

面试

java面试经常遗忘的知识点

1、Java中的关键字static方便在没有创建对象的情况下来进行调用。2、java中的基础数据类型长度是否取决于操作系统?JVMJ保证class文件在不同的操作系统上稳定;这也是java跨平台的一点。3、Integer缓存:修改缓存大小Integer默认的是[-128,127]的缓存范围,之前我们

2020-07-24
62 0

synchronized的CPU原语级别是如何实现的?

代码片段synchronized代码块主要是靠monitorenter和monitorexit这两个原语来实现同步的。当线程进入monitorenter获得执行代码的权利时,其他线程就不能执行里面的代码,直到锁Owner线程执行monitorexit释放锁后,其他线程才可以竞争获取锁。普通方法常量池

2020-07-06
84 0

面向过程 :面向过程性能比面向对象高??

这个并不是根本原因,面向过程也需要分配内存,计算内存偏移量,Java性能差的主要原因并不是因为它是面向对象语言,而是Java是半编译语言,最终的执行代码并不是可以直接被CPU执行的二进制机械码。而面向过程语言大多都是直接编译成机械码在电脑上执行,并且其它一些面向过程的脚本语言性能也并不一定比Java

2020-05-22
76 0

java核心知识点整理

资料:https://fengpt.oss-cn-beijing.aliyuncs.com/halodb/Java核心知识点整理_1589707114813.pdf

2020-05-19
82 0

面试复盘

Java面试2020:1,sql优化(sql语句,索引优化,慢日志,showprofiles,分库分表,缓存)2,你们项目经常使用的QPS有多少呢?3,你们项目的数据量级大概多少?4,数据量级要发生十倍,几十倍增长,数据量特别多的话,你觉得现在项目实现方式会有什么问题?5,你大概了解哪些分库分表的知识?6,水

2020-05-06
264 1

if/else问题解决(一)函数式编程

一、案例 public static Integer add(Integer a1, Integer b1, Integer c1) { return a1 + b1 + c1; } public static Integer sub(Integer a1, Integer

2020-04-03
131 0

手写一个简单的线程池

packagecom.app.lock.app;importjava.util.concurrent.BlockingQueue;importjava.util.concurrent.Executor;importjava.util.concurrent.atomic.AtomicInteger;线

2020-03-26
113 0

表达式1.0 / 0.0将返回什么?它会抛出异常吗?任何编译时错误?

这个问题,我还之前没想过,刚才实验了下...我们来分析下:我们知道,在整型运算中,除数是不能为0的,否则直接运行异常。但是在浮点数运算中,引入了无限这个概念,我们来看一下Double和Float中的定义。Double:publicstaticfinaldoublePOSITIVE_INFINITY=

2020-03-04
152 0

Java 四种线程池的用法分析

1、newThread的弊端执行一个异步任务你还只是如下newThread吗?newThread(newRunnable(){@Overridepublicvoidrun(){//TODOAuto-generatedmethodstub}}).start();那你就out太多了,newThread的

2020-03-03
161 0

ClassNotFoundException 和 NoClassDefFoundError 有什么区别

在写Java程序的时候,当一个类找不到的时候,JVM有时候会抛出ClassNotFoundException异常,而有时候又会抛出NoClassDefFoundError。看两个异常的字面意思,好像都是类找不到,但是JVM为什么要用两个异常去区分类找不到的情况呢?这个两个异常有什么不同的地方呢?Cl

2020-03-03
111 0