11 2018 档案
摘要:从编程的角度:java的8种基本类型不是面向对象的,即基本类型不是对象!不存在封装、继承、多态等概念,不在面向对象体系当中,也就是说基本类型不是Object的子类! 从JVM的角度:它会为所有的基本类型创建一个对象,所以在JVM内部,原始类型就是对象 为什么要使用基本类型? JVM为原始类型创建对象
阅读全文
摘要:== 能用于基本类型之间、基本类型与引用类型之间及相同引用类型之间,不能用于不同引用类型之间 对于基本类型,取值来对比,对于引用类型,取地址来对比 Integer 自动拆箱 基本类型之间 值得对比 自动拆箱的时机并不局限于基本类型与其对应的包装类型 类似Integer a= 1直接赋值会被编译为In
阅读全文
摘要:wait() 与 notify/notifyAll() 是Object类的方法 1. wait() 与notify/notifyAll方法必须在同步代码块中使用 在执行以上方法时,要先获得锁。那么怎么获得锁呢? 使用synchronized关键字获得锁。因此,wait() 与 notify/noti
阅读全文
摘要:在构造函数中,如果不在第一行指定构造器之间的调用关系,即使用this(),那么编译器会给你加上super() 那么就会发生super()->this()->super()的执行过程 为了避免多次创建对象,this()和super()的调用必须在第一行
阅读全文
摘要:先说结论:java没有指针,它使用对象引用来替代指针 c/c++的指针和java的引用完全不是一个东西 c/c++的指针(例如定义a为b变量的指针),a只是变量内存的不同名字(同一块内存) 而java的引用则是指向对象的内存地址,引用本身也占用内存。
阅读全文
摘要:Runnable 任务,没有返回值 Callable 任务,又返回值 Runnable与Callable 相同点: 1. 都是接口; 2. 用来编写多线程程序; 3. 都需要调用Thread.start()启动线程 不同点: 1. 实现Callable接口的任务线程能返回执行结果;而实现Runnab
阅读全文
摘要:转载自:https://blog.csdn.net/cool_ben/article/details/49334655 如下是经典的Fobonacci递归算法: 编译后出错,无法在静态上下文中引用非静态。 因为一个类的静态方法在这个Class文件被加载之后,就可以由这个Class类型对象来调用, 而
阅读全文
摘要:本文总结自:https://blog.csdn.net/asdfsadfasdfsa/article/details/78808131 什么样的方法会抛出InterruptedException异常? 抛InterruptedException的代表方法有: 1. java.lang.Object
阅读全文
摘要:JDK(Java Development Kit) 整个Java的核心 可通过$JAVA_HOME找到 内容:Java运行环境JRE、Java工具(javac/java/jdb等)和Java基础类库(即java API)。 JRE(Java Runtime Environment) 运行JAVA程序
阅读全文
摘要:select * from table limit m,n select * from table limit m,n其中m是指记录开始的index,序号从0开始,表示第一条记录n是指从第m+1条开始,取n条。select * from tablename limit 2,4即取出第3条(序号2)至
阅读全文
摘要:Collections与Collection 1. Collections是java.util下的类,它包含有各种有关集合操作的静态方法2. Collection是java.util下的接口,它是各种集合结构的父接口 ArrayList和Vector1. 同步性: Vector是线程安全的,也就是说
阅读全文
摘要:本文转自:https://www.cnblogs.com/shen-hua/p/5440285.html 成员内部类 特征: 1. 作为外部类的一个成员存在,与外部类的属性、方法并列 2. 成员内部类持有外部类的引用(能直接使用外部类的方法、属性) 3. 成员内部类中不能定义static变量和方法
阅读全文
摘要:抽象类 如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 1. 除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样,必须被继承,才能被使用 2. 一个类只能继承一个抽象类,而一个类却可以实现多个接口。 抽象方法 1. 抽象方法只包
阅读全文
摘要:详情见:https://www.cnblogs.com/xdp-gacl/p/3855702.html 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下)。 因此,在需要保存用户数据时,服务器程序可以把用户数据写
阅读全文
摘要:Content-Disposition(内容部署) 用于下载文件时的字段, 有两种部署类型:inline和attachment inline :将文件内容直接显示在页面 attachment:弹出对话框让用户下载 并可指定下载文件的默认名
阅读全文
摘要:Arrays.asList() 使用Arrays.asList()把数组转换成集合时,不能使用用于修改集合的方法(例如add、remove、clear),这将导致跑出UnsupportOperationException异常 asList并没有将其真正转换为集合,且将数组与列表链接起来,当更新其中之
阅读全文
摘要:List li = new ArrayList(20);System.out.println(li.size()) ;// 0 int [] arr = new int [20];System.out.println(arr.length); //20,没有任何元素 length属性返回的数组的长度
阅读全文
摘要:// java8之前,若从map中根据key获取value,如果key不存在,则添加,这一系列操作可以是下面的操作 Object key = map.get("key"); if (key == null) { key = new Object(); map.put("key", key); } // java8之后。上面的操作可以简化为一行,若key对应的value为空,...
阅读全文
摘要:共享锁与独占锁均用于事务当中,随事务的结束而解除。 共享锁(share lock) 又称读锁,读取操作创建的锁。 一旦上锁,任何事务(包括当前事务)无法对其修改,其他事务可以并发读取数据,也可在对此数据再加共享锁 语法:SELECT ... LOCK IN SHARE MODE; 排他锁(exclu
阅读全文
摘要:按锁定粒度:表锁、页面锁、行锁 存储引擎支持情况: 在具体说明之前得明白什么是死锁,什么是锁冲突 死锁: 多个进程互相等待对方锁的释放 锁冲突:一个进程等待另一个进程释放需要的锁 行锁 粒度小,开销大,加锁慢,会产生死锁,发生锁冲突的概率最低,并发度也最高。 备注:在InnoDB中,锁是逐步获得的,
阅读全文