
JavaSE
文章平均质量分 61
开发狗
我要一步一步往上爬,在最高点乘着叶片往前飞。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用枚举 Enum 来减少 if else,快来看看适不适合你吧?
1. 场景当我需要调用其他其他接口,这个接口某个参数需要根据不同情况来传递不同的固定值如:B接口调用A接口,A接口中需要传递授权码,这个授权码在不同的业务场景不同的手机系统需要传递不同的值,普通的传值方式如下:public void notEnum(NotEnumRequest req){ TestReq testReq = new TestReq();//A接口的请求 if("android".equals(req.getSysType())){ if("a".equals(req.get原创 2020-08-12 18:59:17 · 738 阅读 · 0 评论 -
需要从集合中进行分页的场景你遇到过吗
一、方法说明java.util.List 中有一个 subList() 方法,用来返回 List 的一部分视图。List<E> subList(int fromIndex, int toIndex)二、注意返回的子列表不能修改,修改之后会导致原列表也发生改变。如集合内容为 [1,2,3,4,5] ,则 list.subList(2,4) 会返回 下标 2-3 的值,也就是...原创 2019-08-21 14:50:05 · 391 阅读 · 1 评论 -
Double 运算丢失精度问题以及 BigDecimal 用法
一、丢失精度问题还原。public double add() { double number1 = 1; double number2 = 20.2; double number3 = 300.03; double result = number1 + number2 + number3; System.out.println(result); return result;...原创 2018-12-11 17:46:16 · 393 阅读 · 0 评论 -
throws 异常和 @Transaction 回滚问题
一、情形还原。@Transactional(rollbackFor=Exception.class)public void method(){ // 会回滚 throw new Exception(""); // 会回滚 throw new RuntimeException("");}@Transactional(rollbackFor=RuntimeException.clas...原创 2018-12-11 17:17:41 · 3985 阅读 · 1 评论 -
线程通信的 wait()、notify()、notifyAll()
一、概述。对在Java中,可以通过配合调用Object对象的wait()方法和notify()方法或notifyAll()方法来实现线程间的通信。在线程中调用wait()方法,将阻塞等待其他线程的通知(其他线程调用notify()方法或notifyAll()方法),在线程中调用notify()方法或notifyAll()方法,将通知其他线程从wait()方法处返回。 对Object是所有类的...原创 2018-08-08 11:03:44 · 325 阅读 · 0 评论 -
装饰设计模式笔试题
1.请设计下面的类体系结构。 黑咖啡 加糖的黑咖啡 加奶的黑咖啡 加糖加奶的黑咖啡 加糖加冰的黑咖啡 加冰加奶的黑咖啡 加糖加奶加冰的黑咖啡 功能: 煮 + 喝2.实现。A、抽取接口interface coffee{ void boil(); void drink(); }B、创建原创 2017-12-17 22:41:36 · 341 阅读 · 0 评论 -
JavaSE之手动模拟死锁
【死锁模拟】什么是死锁? 通俗来讲死锁就像两个人,一个人买东西,一个人卖东西,买东西的人说:你给我东西我给你钱,卖东西的人说:你给我钱我给你东西。这俩人杠上了,这个时候没有一个人来调解,这俩人谁都不会善罢甘休。 官方的话来说,两个线程发生了资源竞争,都在等对方释放资源,这时候如果没有外力因素就会一直等下去,接下来有一个例子来模拟死锁。//提供公共的锁对象class MyLock{ st原创 2017-11-30 00:02:46 · 338 阅读 · 0 评论 -
面试常客TCP挥手握手你学废了吗?
Tcp三次握手 客户端: 请求链接 SYN包(SYN=x)发送到服务端,进入了SYN_SEND状态,等待服务器确认; 服务端: 收到SYN包,必须确认SYN包(ACK=X+1),同时自己也发送了一个SYN(SYN=y)即(SYN+ACK包),此时服务器进入SYN_RECV状态; 客户端: 收到了服务器的SYN+ACK包,向服务器发送ACK包(ACK=y+1),此包发送完毕,两者进入ESTAB原创 2017-11-09 19:34:45 · 389 阅读 · 0 评论 -
面试问到集合你能答上来多少?
一、Collection 接口继承体系。 二、ArrayList、Vector和LinkedList的区别。 1)ArrayList和Vector 1.索引数据速度快。两者都是基于object[ ] array来实现的,他们会在内存中开辟一段连续的空间,因此,支持用序号(下标,索引)访问元素。 2.插入操作速度慢。插入元素的时候需要移动容器中的元素,所以执行速度比较慢。ArrayList原创 2017-10-27 11:01:03 · 312 阅读 · 0 评论 -
JavaSE基础之异常
一、概念 异常指的是程序在运行时(不是编译时期)发生的非正常的情况或者错误,当程序违反了语义规则时,JVM就会将出现的错误表示为一个异常并抛出。这个异常可以在catch程序块中进行捕捉,然后处理。而异常处理的目的就是提高程序的安全性和健壮性。 二、异常的体系: 三、异常分类。 1.)Error :表示程序在运行时期出现了非常严重的错误,并且该错误是不能恢复的。由于这属于JVM层次的错误,所以原创 2017-10-27 10:51:52 · 406 阅读 · 0 评论