(5)...面试
IT云清
技术专家,团队主管,Apache Seata Committer,公众号:java4all
展开
-
java中getClass()和getSuperClass()的讲解
为了讲解这个问题,我们先来看一下下面的代码:package com.yonyou.test; import java.util.Date; class Test extends Date{ private static final long serialVersionUID = 1L; public static void main(String[] args) { ...转载 2019-12-07 11:17:36 · 1513 阅读 · 0 评论 -
java CountDownLatch用法 主线程等待子线程执行完后再执行
这里记录一下下面这种情况:主线程需要等待多个子线程执行完后再执行。1.使用CountDownLatch示例如下,我们初始化一个CountDownLatch,值为10(子线程个数),然后每次一个子线程执行完后执行一下countDown(),代码示例如下:...原创 2018-07-23 17:41:33 · 4957 阅读 · 0 评论 -
java switch case 用法详解
1.普通用法 public static void test(){ int i = 5; switch (i){ case 5: System.out.println("是个5"); break; case 10: ...原创 2018-07-06 16:43:10 · 43999 阅读 · 1 评论 -
java泛型通配符 ? extends T 和 ? super T 的区别和用法
1.二者的意思2.用法例如,我们有多个对象,其中Cat,Dog,Chicken都是extends Animal的。 List<? extends Animal> list = new ArrayList&l原创 2018-07-31 11:21:38 · 1667 阅读 · 1 评论 -
一个线程start多次
一个线程start多次会怎样?结果:会报错。报错如下:Exception in thread "main" java.lang.IllegalThreadStateException at java.lang.Thread.start(Thread.java:705) at com.java4all.test4.Test1.main(Test1.java:13)...原创 2018-08-15 13:52:50 · 2681 阅读 · 0 评论 -
冒泡排序优化
1.基础版本 public static void main(String[] args){ int[] arr1= {1,2,6,36,10,7,91,92,93,94}; bubbleSort(arr1); } /** * 冒泡排序初级版本 * @param arr */ public stat...原创 2018-09-03 10:22:18 · 492 阅读 · 0 评论 -
分布式事务
本文转载自:click here分布式事务是企业集成中的一个技术难点,也是每一个分布式系统架构中都会涉及到的一个东西,特别是在微服务架构中,几乎可以说是无法避免,本文就分布式事务来简单聊一下。数据库事务在说分布式事务之前,我们先从数据库事务说起。 数据库事务可能大家都很熟悉,在开发过程中也会经常使用到。但是即使如此,可能对于一些细节问题,很多人仍然不清楚。比如很多人都知道数据库事务的几...转载 2018-09-12 16:58:54 · 353 阅读 · 0 评论 -
static静态代码块加载和执行
静态代码块,非静态代码块,无参构造,有参构造,这些代码片段分别在什么时候加载执行?1.父类Fatherpackage com.java4all.test10;public class Father { static { System.out.println("father的静态代码块"); } { System.out.pr...原创 2018-09-14 11:02:49 · 2940 阅读 · 0 评论 -
java动态代理和静态代理的实现
代理模式:为其他对象提供一种代理以控制目标对象的访问,在某些情况下, 一个对象不适合或者不能直接引用另外一个对象,代理对象可以在这个客户类和目标对象中起到一个桥梁作用。简单来说,代理对象的使用,是在不修改原有目标对象的基础上,增强原有目标对象的功能逻辑。代理的实现有两种,静态代理和动态代理,而动态代理,又分为jdk动态代理和cglib动态代理。本文目录:1.静态代理的实现2.jdk动态...原创 2018-10-09 09:33:10 · 764 阅读 · 0 评论 -
java中的6种单例写法
在java中,单例有很多种写法,面试时,手写代码环节,除了写算法题,有时候也会让手写单例模式,这里记录一下单例的几种写法和优缺点。1.初级写法2.加锁3.饿汉式4.懒汉式5.双重加锁6.内部类1.初级写法package com.java4all.test6;/** * Author: yunqing * Date: 2018/8/13 * Description:单例...原创 2018-11-25 18:07:21 · 6729 阅读 · 18 评论 -
java Integer值比较
所有相同类型的包装类对象之间的值比较,应该使用equals方法比较。–来自阿里巴巴java开发手册。先看个简单实例: public static void main(String[] args)throws Exception{ Integer a = -121; Integer b = -121; Integer c = 345...原创 2018-07-23 12:52:00 · 2714 阅读 · 0 评论 -
java中i++ 和 ++i的区别
今天同事扔给我两道面试题,我看完后扔到一个交流群里,回答这道题的绝大部分人竟然都答错了;很多人很清晰的知道这两道题想考察面试者对 i++ 和 ++i 的理解,也很清晰的知道这二者的区别,但是题还是做不对;两道题如下,大家可以先思考一下,给个答案,然后再去验证自己的想法。 (这是一道典型的看着非常简单的题,但是不少人还是会因为粗心栽跟头) 第一题: int a = 0; ...原创 2018-06-20 17:27:28 · 52806 阅读 · 59 评论 -
@Enable***注解的原理与使用
摘要:我们在开发中,会经常用到@Enable***开头的这种注解,来自动导入一些框架配置的默认的bean,进入注解源码,会发现这些注解类上都会有一个@Import(****.class)注解,这些注解是怎么实现的呢?Import导入,又分为三种方式,分别为:1.直接导入配置类2.根据条件选择配置类3.动态注册Bean下面,通过示例,进入源码,分析一下这三种导入方式:原创 2018-02-05 17:47:16 · 2373 阅读 · 0 评论 -
java常用的几种数据结构,堆栈,队列,数组,链表,哈希表
java常用的几种数据结构,堆栈,队列,数组,链表,哈希表原创 2017-08-27 12:10:00 · 5894 阅读 · 2 评论 -
Redis数据库的命令行操作
Redis数据库有5种数据结构,分别是:String, List, Hash, Set, SortedSet.原创 2017-08-27 16:15:56 · 3456 阅读 · 0 评论 -
Java多线程系列(二)-----实现方式
上一篇讲到了,多线程可以同时执行多个任务,那么,该如何创建线程呢?通过API中搜索,查到Thread类。通过阅读Thread类中的描述:Thread是程序中的执行线程。Java 虚拟机允许应用程序并发地运行多个执行线程。 继续阅读,发现创建新执行线程有两种方式:1)将类声明为 Thread 的子类。该子类应重写 Thread 类的 run 方法。创建对象,开启线程。run方法相当于...原创 2017-08-31 19:23:48 · 522 阅读 · 1 评论 -
Java多线程系列(一)-----基本概念
这个系列,主要记录java中一个非常重要的知识点--多线程,系列1主要理清一些基本的相关概念,引入多线程原创 2017-08-31 19:21:27 · 445 阅读 · 0 评论 -
list.remove()时出问题,集合的remove方法注意事项1
集合有一个方法叫remove(index),这是用来移除集合元素的,但是使用的时候,会有一个问题,很多人不注意这个问题,会发现使用完这个方法后,数据对不上了。看下面的小案例:请移除list集合中含有"a"的字符串。如下: public static void main(String[] args) { //建立一个list集合,里面有5个元素含有“a”,3个不含有“a” Li...原创 2017-09-09 16:24:40 · 4824 阅读 · 2 评论 -
Redis的数据持久化机制RDB,AOF
Redis数据库的数据持久化机制有两种:RDB和AOF。原创 2017-08-27 16:34:15 · 478 阅读 · 0 评论 -
HashMap和HashTable的区别和联系
HashMap和HashTable的区别,这个问题很古老,但是面试经常会被问到,这里整理一下。原创 2017-09-21 18:41:30 · 641 阅读 · 0 评论 -
Spring Boot---(4)SpringBoot异步处理任务
欢迎关注公众号:java4all场景:现在需要上传一个Excel表格,数据量几万条,而且,上传解析后还需要进行计算,然后插入数据库。分析:上传和解析,都很简单,但是,这里如果使用同步方式,那么:上传-->解析-->运算-->插入数据库;这个过程,前台的页面都是等待状态的,用户会以为页面卡死了。所以,这里需要做异步处理:1.上传-->返回正在解析的标志;2.解...原创 2018-01-12 17:21:06 · 88244 阅读 · 44 评论 -
mybatis多个参数类型不同,sql语句中paramterType怎么写?
<select id="getTax" paramterType="int还是String" resultMap="BaseResultMap"> SELECT e.ent_name, sum(u.total) total, e.id from ent_file e ,upload_tax u where DATE_FORMAT(tax...原创 2017-08-18 19:05:50 · 5174 阅读 · 7 评论