天猫研发Java团队(4面全题目):并发压测+Mina+事务+集群+秒杀架构
天猫高级Java一面 常见集合类的区别和适用场景 并发容器了解哪些? 如何判断链表是否有环 concurrentHashMap如何实现 集群服务器 如何application 共享 JAVA网络编程中:BIO、NIO、AIO的区别和联系 jvm内存模型jmm 知道的全讲讲 JAVA的垃圾回收,标记算 ... 查看全文
通过阶乘的例子,练习在JavaScript, Scala和ABAP里实现尾递归(Tail Recursion)
Before we start to research tail recursion, let’s first have a look at the normal recursion. A simple factorial implementation by recursion: Let N = 5 ... 查看全文
牛逼!支付宝高级Java三面题目:线程锁+事务+雪崩+Docker等
支付宝高级Java一面 JVM中的老年代在什么情况下会触发GC? CMS的垃圾回收步骤,G1和CMS的区别? CMS哪个阶段是并发的,哪个阶段是串行的? 谈谈Java线程池,线程池中几个参数含义 谈谈你了解的J.U.C包的JDK源码(CAS、AQS、ConcurrentHashMap、ThreadL ... 查看全文
一脚踩进java之基础篇19——面向对象 (final,static关键字)
一、final关键字 1.1 final的概念 1)继承的出现提高了代码的复用性,并方便开发。 2)但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写。 3)可是当子类继承了这些特殊类之后,就可以对其中的方法进行重写,那怎么解决呢? 4)要解决上述的这 ... 查看全文
把99%的程序员烤得外焦里嫩的JavaScript面试题
想知道可执行级代码块与非可执行级代码块有什么区别吗?JavaScript是如何执行代码的?赶紧猛戳本文吧!精彩没人持续分享中...... 查看全文
史上最全Java多线程面试60题,含答案大赠送!
【BAT必考系列!多线程60题】 多线程有什么用? 线程和进程的区别是什么? ava实现线程有哪几种方式? 启动线程方法start()和run()有什么区别? 怎么终止一个线程?如何优雅地终止线程? 一个线程的生命周期有哪几种状态?它们之间如何流转的? 线程中的wait()和sleep()方法有什么 ... 查看全文
关于JAVA中的JMM内存模型
关于JAVA中的JMM内存模型 在Java中当多个线程操作同一个资源,由于某些原因当一个线程启动并获取资源后,若第二个线程队同一个资源进行了改动,在改动之前的线程并不会马上获取主存中的资源(CPU嗅探),这可能会造成阻塞. JMM内存模型如下图: 为了解决这一问题,我们需要应用volatile关键字 ... 查看全文
CentOS 7 安装 JAVA环境(JDK 1.8)
CentOS 7 安装 JAVA环境(JDK 1.8) 1.打开url选择jdk1.8下载 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 我选择linux x64版本: 2.下载 ... 查看全文
最全Java锁详解:独享锁/共享锁+公平锁/非公平锁+乐观锁/悲观锁
在Java并发场景中,会涉及到各种各样的锁,比如:高并发编程系列:4种常用Java线程锁的特点,性能比较、使用场景,这些锁有对应的种类:公平锁,乐观锁,悲观锁等等,这篇文章来详细介绍各种锁的分类: 公平锁/非公平锁 可重入锁 独享锁/共享锁 乐观锁/悲观锁 分段锁 自旋锁 乐观锁 VS 悲观锁 乐观 ... 查看全文
【JAVA SE基础篇】6.开始前的一些规定以及关键字
1.注释 注释是为了解释某些代码所加的文字,类似批注,提高程序可读性。编译时,编译器直接跳过,不会 变成字节码文件。 单行注释:以"//"开头,这一行"//"后面均为注释,换行即结束 多行注释:以"/*"开始,以"*/"结束,这之间都是注释,换行并不会影响注释结束,多行注释不能嵌套 2.标识符使用规 ... 查看全文
今日校园自动提交问卷-Java实现
站在巨人的肩膀上,我所写的东西,也会开源分享出来!已经能正常用了,但是还需优化一些小bug。 授人以鱼不如授人以渔,我把思路分享出来。 如果程序优化好了,我会将源码放在这里 查看全文
算法系列——JavaScript中广度优先搜索思想实现
什么是广度优先搜索? 如果只是是背概念,幼儿园的小朋友都能背下来念给你听。 假设看这篇文章的都和我一样是个前端工程师,我们要从广度优先搜索(BFS)中学到什么?如果你看完这篇文章能够回答这个问题,那么你已经看懂了。 广度优先搜索不是排序算法,它和快速排序、选择排序、冒泡排序等不一样,你听过二分查找吗 ... 查看全文
常用 elasticsearch 查询 及 java 实现
collopse { "size":3, "query":{ "more_like_this":{ "fields" : ["remark"], "like" : ["特价","套装" ], "min_term_freq" : 1, "max_query_terms" : 1 } } , "coll ... 查看全文
一脚踩进java之基础篇21——面向对象 (访问修饰符、代码块)
一、访问修饰符 在Java中提供了四种访问权限,使用不同的访问权限时,被修饰的内容会有不同的访问权限,以下表来说明不同权限的访问能力: public protected default private 同一类中 √ √ √ √ 同一包中(子类与无关类) √ √ √ 不同包的子类 √ √ 不同包中的无 ... 查看全文
idea maven模块变灰或者java文件夹非 Sources文件夹
背景 做项目时候发现java文件夹没有颜色,是个普通文件夹,而非正常的Sources文件夹。虽然手动将它设置为资源文件夹,但是很多类还是引用不到。 后来看一下idea里面的maven栏,发现这个模块和其他模块不一样,标签是灰色的。 解决 百度之后发现可能是变灰模块的pom文件被忽略了(但是不知道为什 ... 查看全文
三层类加载器、双亲委派模型--Java类加载器总结分析
在Java类加载过程总结分析这篇博文中,我们提到,JVM类加载的第一步就是”加载“,而这一步就是由Java的类加载器完成 类加载器的作用:通过一个类的全限定名来获取描述该类的二进制字节流 注意:对于任意一个类,都必须由它的类加载器和这个类本身一起确立其在JVM中的唯一性,即 :即使两个类来源同一Cl ... 查看全文
[20-05-08][Class Notes 6]Java OO 6
for each遍历数组,从第一个元素开始,遍历到最后一个元素 javaDoc @author:代表源代码的作者@version:描述类的软件版本@see:创建一个“参见”XX条目的连接,如类、方法、变量等@param:用于描述方法的形式参数@return:用于描述方法的返回值@exception: ... 查看全文
关于Java的编译执行与解释执行
编程语言分为低级语言和高级语言,机器语言、汇编语言是低级语言,C、C++、java、python等是高级语言。 机器语言是最底层的语言直接执行,汇编语言通过汇编器翻译成机器指令后执行,一条汇编指令,对应着一条机器指令。 高级语言编程的程序有三种执行方式: 1.一种是编译执行,程序语句先通过编译器(负 ... 查看全文
总结一些关于JavaScript的小技巧!
这篇文章主要记录一下平时自己实践得到的, 博客中学习的以及在一些项目源码中看到的 javascript 技巧。有些东西可以说是奇淫技巧,有些可能是 ES6+ 中一些比较具有实用性的新语法。 ... 查看全文
使用java类配置Spring
1. 使用@Configuration标记一个配置类 @Configuration public class JavaConfig { @Bean public User user(){ return new User(); } } @Configuration的本质就是一个@Compontent( ... 查看全文