Java
老头儿ii
除了代码,还有诗和远方。
展开
-
正则表达式
…原创 2020-07-30 10:33:34 · 155 阅读 · 0 评论 -
Javadoc注释
参考 Javadoc 百度百科原创 2020-04-21 17:46:03 · 156 阅读 · 0 评论 -
静态方法泛型
静态方法泛型定义<T>只能放在static关键字之后原创 2020-04-21 10:12:06 · 392 阅读 · 0 评论 -
Java反射中getFields和getDeclaredFields的区别
示例定义一个SuperClass的实体类,分别定义四种修饰符的字段(Field)public class SuperClass { public String superPublicField; protected String superProtectedField; String superDefaultField; private String su...原创 2020-03-25 14:45:53 · 827 阅读 · 0 评论 -
SpringBoot学习笔记
…原创 2020-03-08 11:17:13 · 125 阅读 · 0 评论 -
Java注解(附具体例子)
什么是注解?注解,可以看作是对 一个 类/方法 的一个扩展的模版,每个 类/方法 按照注解类中的规则,来为 类/方法 注解不同的参数,在用到的地方可以得到不同的 类/方法 中注解的各种参数与值。从JDK5开始,Java增加了对元数据(描述数据属性的信息)的支持。其实说白就是代码里的特殊标志,这些标志可以在编译,类加载,运行时被读取,并执行相应的处理,以便于其他工具补充信息或者进行部署。----...原创 2019-08-16 09:27:05 · 236 阅读 · 0 评论 -
Java类中成员加载顺序
一直对类中成员的加载过程很迷糊,所以打算测试一下,如果有不正确的地方希望大佬指出代码public class Main { private int generalMember = staticMember + 100;//普通成员 private static int staticMember = 10;//静态成员 static { System....原创 2019-08-31 11:37:43 · 565 阅读 · 0 评论 -
关于实现Runnable接口不能抛异常只能捕获异常原因
在重写的run方法中,我们只能够进行异常的捕获而不能够抛出异常,原因是因为在父类Runnable接口中,run方法没有抛出异常,则实现Runnable的子类就无法抛出异常(子类在重写父类方法时只能够抛出与父类相同的异常或者父类异常的子类)...原创 2019-09-03 15:47:38 · 1856 阅读 · 0 评论 -
如何实现处理线程的返回值
主线程等待法使用Thread类的join()方法阻塞当前线程以等待子线程处理完毕通过Callable接口实现:通过FutureTask或线程池获取方法一MyRunnable类//子线程,默认value为null,等待3s之后改变其值public class MyRunnable implements Runnable{ private String value; ...原创 2019-09-03 16:20:02 · 505 阅读 · 0 评论 -
一道囊括了Java继承、异常的Java基础题
public class Main1 { public static void main(String[] args) { System.out.println(new B().getValue()); } static class A { protected int value; public A(int v) { ...原创 2019-09-07 17:43:55 · 114 阅读 · 0 评论 -
ClassNotFoundException和NoClassDefFoundError的区别
ClassNotFoundExceptionNoClassDefFoundError从上图可以看出ClassNotFoundException继承至Exception,NoClassDefFoundError继承至Error,两者均为找不到类而发生的。不同在于ClassNotFoundException为受检异常,当应用程序运行的过程中尝试使用类加载器去加载Class文件的时候,如果没有在...原创 2019-09-09 20:28:26 · 329 阅读 · 0 评论 -
两个线程同时启动,当t1线程执行到某一行之后,等待t2线程执行完后在执行完成
/** * 两个线程同时启动,当t1线程执行到某一行之后,等待t2线程执行完后在执行完成 * * @Author: FangJu * @Date: 2019/9/24 */public class ThreadDemo { public static void main(String[] args) { final CountDownLatch latch = ...原创 2019-09-24 10:33:48 · 676 阅读 · 0 评论 -
Java知识点之反射
1、反射类:描述具有一类相同特征(属性)和行为(方法)的事物对象:类的具体实例对象Class:用于描述所有的类,所有的类也具有共同特征反射:将Java类中的各个成分(属性、方法、构造方法)映射成对应的类反射的好处:提高了整个代码的灵活度2、Class类即为加载的字节码文件,加载的方式有三种:(1)类名.class(2)对象.class(3)Class.forName(“类的全路径...原创 2019-07-06 19:10:02 · 133 阅读 · 0 评论 -
求两个数的平均数时溢出
直接上代码 public static void main(String[] args) { int low = 1; int high = Integer.MAX_VALUE; int result1 = (low + high) / 2;//溢出 int result2 = low + (high - low) / 2;/...原创 2019-08-08 23:07:43 · 265 阅读 · 0 评论 -
Java知识点之多线程
1、什么是进程?在内存空间中开辟出来的一块独立的空间2、如何保证线程安全?通过合理的时间调度,避开共享资源的存取冲突。另外,在并行任务设计上可以通过适当的策略,保证任务与任务之间不存在共享资源,设计一个规则来保证一个客户机的计算工作和数据访问只会被一个线程或一台工作机完成,而不是把一个客户的计算工作分配给多个线程去完成3、线程的生命周期及五种基本状态新建状态(new)当线程对象创建后...原创 2019-07-06 19:31:18 · 132 阅读 · 0 评论 -
Java泛型
转自 https://blog.csdn.net/s10461/article/details/53941091原创 2019-06-01 23:51:33 · 87 阅读 · 0 评论 -
Java形参与实参
转自 https://www.cnblogs.com/calence/p/5346672.html原创 2019-06-02 14:13:02 · 141 阅读 · 0 评论 -
JDBC相关工具类的封装
一、JDBC连接工具类(MySQL为例)1、在项目根目录创建一个properties的配置文件db.properties,里面定义了四行数据,分别对应着JDBC连接所需要的几个参数(注:Properties底层为一个Hashtable,配置文件中“=”之前的代表Map中的键,之后的代表相应键所对应的值)driverClassName=com.mysql.jdbc.Driverurl=jdbc...原创 2019-06-15 19:46:18 · 11021 阅读 · 2 评论 -
JAVA Synchronized对象锁和类锁区别
转载 https://blog.csdn.net/pengweid/article/details/85711970转载 2019-06-16 15:08:28 · 670 阅读 · 0 评论 -
Java知识点汇总
最近趁着有时间把Java的基础知识总结了一遍,也算是对自己知识的巩固,以此作为学习笔记原创 2019-07-03 11:27:58 · 195 阅读 · 0 评论 -
Java知识点之Java基础
一、Java语言的特性1、“一次编译,到处运行”Java语言它首先将.java的源代码编译成.class的二进制字节码文件,然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现“一次编译,到处执行”的跨平台特性。Java语言是解释型的,如前所述,Java程序在Java平台上被编译成字节码格式,然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器,对这些字...原创 2019-07-03 12:50:45 · 379 阅读 · 0 评论 -
Java中try...catch...finally和try...finally
对于try…catch…finally,先执行try中的代码,如果中途出现了异常,直接将异常抛向异常处理器,然后直接执行catch中的代码块,最后执行finally代码块public static void main(String[] args) { String name = null; try { System.out.println(...原创 2019-07-05 23:45:38 · 297 阅读 · 0 评论 -
Java知识点之面向对象
1、若对一个类不重写,它的equals()方法是如何比较的?比较的是对象的地址2、请解释hashCode()和equals()方法有什么联系?(1)相等或者相同的对象必须具有相等的哈希码(或者散列码)(2)如果不重写Object中的hashCode方法,那么hashCode为堆中的内存地址,hashCode是不相同的;但是如果重写了此方法,通过算法计算出来的两个对象的hashCode可能相...原创 2019-07-06 14:23:04 · 235 阅读 · 0 评论 -
Java知识点之关键字
1、请你讲讲Java里面的final关键字是怎么用的?(1)当final修饰一个类时,表明这个类不能被任何类继承,并且被final修饰的这个类中的成员和方法被隐式设置为final(2)使用final的原因有两个:1.把方法锁定,以防任何继承类修改它。2.效率(3)对于一个final变量,如果修饰的是基本数据类型,那么其值在初始化之后就不能被改变;如果是引用类型的变量,则对其进行初始化之后便不...原创 2019-07-06 15:30:19 · 327 阅读 · 0 评论 -
Java知识点之JVM
1、Java虚拟机内存区域的划分以及作用详解程序计数器(1)也称为PC寄存器。Java文件被编译成class字节码最终解释成机器码,在JVM中,多线程通过轮流切换来获取CPU时间片,因此,在任意时刻,一个CPU的内核只会执行一条指令,即一个线程对应着一个程序计数器,程序计数器是线程中私有的,不能共享的。(2)程序计数器主要存储一段字节码,这段字节码记录的是当前线程下一条需要执行指令的字节码...原创 2019-07-06 16:44:38 · 209 阅读 · 0 评论 -
Java知识点之锁
1、Synchronized对象锁对象锁是针对于对象的,也就是说一个对象就有一把锁。这个锁由JVM控制获取和释放。当一个对象被多个线程访问synchronized修饰的方法或者代码块的时候,那么最先获取锁的线程先执行此方法,其他线程等待。线程在执行过程中抛出异常而终止或者执行完代码块正常返回时JVM会自动释放锁,又进行下一轮竞争(注:当前线程还参与竞争的话与其他线程是平等的)synchron...原创 2019-07-06 17:28:39 · 216 阅读 · 0 评论 -
Java知识点之集合
1、请说明List、Map、Set三个接口存取元素时,各有什么特点?(1)List以特定的索引来存取元素,可以有重复元素(2)Set不能存放重复元素(用对象的equals()方法来区分元素是否重复)(3)Map保存键值对映射,映射关系可以是一对一或者多对一(4)Set和Map容器都有基于哈希存储和排序树的两种实现版本,基于哈希存储的版本理论存取时间复杂度为o(1),而基于排序树版本的实现在...原创 2019-07-06 18:55:02 · 191 阅读 · 0 评论 -
Java中private、protected、public和default的区别
注意:java的访问控制是停留在编译层的,也就是它不会在.class文件中留下任何的痕迹,只在编译的时候进行访问控制的检查。其实,通过反射的手段,是可以访问任何包下任何类中的成员,例如,访问类的私有成员也是可能的。区别:public:可以被所有其他类所访问private:只能被自己访问和修改protected:自身、子类及同一个包中类可以访问default:同一包中的类可以访问,声明时...原创 2019-05-30 21:51:59 · 288 阅读 · 0 评论