随笔分类 - java基础
摘要:java开发中的异常可以通过切面@RestControllerAdvice统一进行处理返回。 但为了包装统一服务调用和统一异常可以包装一波: 一、包装异常类 @EqualsAndHashCode(callSuper = true) @Data public class MyException ext
阅读全文
摘要:二叉树: 1、每个结点不能多于两个子树; 2、一颗平衡二叉树的深度要比及结点个数N小得多。 二叉查找树: 1、结点x的所有左子树的值小于x,所有右子树的值大于x; AVL树: 1、一种带有平衡条件的二叉查找树; 2、每个结点的左子树和右子树深度最多差1。 红黑树: 1、树的颜色只能为红色或黑色的一种
阅读全文
摘要:一、Java 8 对接口做了进一步的增强。(默认方法和静态方法) a. 在接口中可以添加使用 default 关键字修饰的非抽象方法。即:默认方法(或扩展方法不用被实现)如:comparator接口。Iterable接口中的forEach默认方法。 b. 接口里可以声明静态方法,并且可以实现。如:c
阅读全文
摘要:A a = (A)Class.forName(“pacage.A”).newInstance(); 这和你 A a = new A(); 是一样的效果。 String className = “Example”;class c = Class.forName(className); 1、如果你知道一
阅读全文
摘要:10种简单的Java性能优化: 1、使用StringBuilder 2、避免使用正则表达式 使用正则表达式的话,至少要将 Pattern 缓存下来,避免反复编译Pattern。 static final Pattern HEAVY_REGEX = Pattern.compile("(((X)*Y)*
阅读全文
摘要:Math.random()产生0-1之间的Double,已被淘汰。 1.多使用系统的类。 Random:可带种子或者不带种子。带种子每次运行一样的结果 java.util.Random r=new java.util.Random(20); for(int i=0;i<10;i++){ System
阅读全文
摘要:跳转到文件路径:D: cd D:/test/ javac Hello.java java Hello
阅读全文
摘要:断言方法: public static void assertEquals(Object[] expected, Object[] actual) // 测试a是否等于b public static void assertEquals(String message, Object[] expecte
阅读全文
摘要:内部类分为四种: 成员内部类、类方法与普通方法同级; 局部内部类、类方法内部,局部内部类有构造器,通过构造器把外部的变量传入局部内部类再使用是完全可以的 匿名内部类、匿名内部类是唯一没有构造器的类,和局部内部类访问本方法内的final变量和方法外的private变量。jdk1.8不再要求用final
阅读全文
摘要:线程安全的集合: 淘汰Vector和HashTable,使用 CopyOnWriteArrayList:内部的方法使用了ReentrantLock加锁; ConcurrentHashMap:则利用ReentrantLock实现了锁分离,锁的只是segment而不是整个Hash表 HashMap源码:
阅读全文
摘要:java基本数据类型就8种,记住就好了。除了这些都是引用型的了。 java四类八种基本数据类型 第一类:整型 byte short int long 第二类:浮点型 float double 第三类:逻辑型 boolean(它只有两个值可取true false) 第四类:字符型 char 在栈中可以
阅读全文
摘要:权限关键字: public:可以被所有其他类所访问,不同的包 protected:当前类的成员、同一个包中、不同包中对子类可见父类protected,继承类 default:同一包中的类可以访问,声明时没有加修饰符,认为是friendly。同一个包 private:只能被自己访问和修改 都可以修饰类
阅读全文
摘要:1.java中的序列化时transient变量(这个关键字的作用就是告知JAVA我不可以被序列化)和静态变量不会被序列 化(下面是一个测试的例子) (实体带versionUUID,便于反序列化时不会报错。) 2.也是最应该注意的,如果你先序列化对象A后序列化B,那么在反序列化的时候一定记着JAVA规
阅读全文
摘要:工厂方法: 工厂方法: 工厂模式定义:实例化对象,用工厂方法代替new操作.,通过定义一个工厂类,传入不同的参数(或者class对象)返回不同的对象,对象继承的接口。 使用工厂模式,虽然这样做,可能多做一些工作,但会给你系统带来更大的可扩展性和尽量少的修改量 而这些汽车的组件是与调用者无关的,严重违
阅读全文


浙公网安备 33010602011771号