随笔分类 - java
java基础及进阶
摘要:1、JUnit介绍 JUnit是一个Java的单元测试框架,平常学习Java时都是通过main函数来测试代码的,但是main()函数只能有一个,并且不能实现代码与测试分离。而单元测试可以进行代码与测试的分离,很好的组织测试代码。 2、通过Maven引入JUnit <!-- https://mvnre
阅读全文
摘要:什么是lambda表达式 lambda是java8的新特性 支持将代码块作为方法的参数,使用更加简洁的代码来创建一个函数式接口的实例,所谓函数式接口就是只有一个方法的接口。 可以认为lambda表达式是创建匿名内部类的简化版。 回顾匿名内部类 public class Main { public s
阅读全文
摘要:6、反射机制 动态语言:动态语言是一种在运行时可以改变其结构的语言。 而java是一种静态语言,但是java的反射机制使得java更加灵活,于是Java也是一种“准动态语言”。 反射:反射就像照镜子一样,通过镜子可以看到所有信息。java种通过反射可以获取一个类的所有内部信息。反射虽然灵活,但是也损
阅读全文
摘要:1、注解的作用 注解是对某段程序进行标注与解释,是为了让程序理解这是什么,并进行代码的审查。 2、注解与注释的区别 顾名思义,注解与注释都是对程序的解释与说明,但是注解是为了方便程序知道这是什么,而注释是为了让程序员知道这是什么,也方便后期的代码维护。 3、java中常见注解 @Override:这
阅读全文
摘要:死锁 死锁的四个必要条件: 互斥条件:一个资源每次只能被一个进程使用 请求与保持:一个进程因请求资源而阻塞时,对已获得的资源保持不放 不可剥夺条件:对已获得资源,在未使用完前,不可被强制剥夺 循环等待条件:互相持有对方的资源保持不放,导致多个进程循环等待。 注:只要想办法突破其中一个或多个条件就能避
阅读全文
摘要:什么是进程 进程是程序的一次执行,是系统资源分配的单位,进程包含多个线程。 真正的多线程是多个cpu,即多核,如服务器;而模拟出来的多线程只有一个cpu,一个cpu同时只能做一件事,由于切换速度非常快,人察觉不到变化,所以看上去好像是同时进行的。 如何创建线程 继承Thread类,这个类本身实现了R
阅读全文
摘要:java泛型 泛型方法及泛型类 public class testOne<Q> { private Q q; public void set(Q q) { this.q=q; } public Q get() { return q; } public void print(Q str) { Syst
阅读全文
摘要:static详解 在类中,使用static修饰的属性归类本身所有,并且该类的所有对象共享这个属性 子类不能重写父类中含有static,final,private修饰的方法 使用final修饰的类会断子绝孙,不能被继承。 final修饰的属性与该类的对象有关,并且不能修改其值,类本身无法使用。 静态代
阅读全文
摘要:与、或、非运算 //短路运算 int i=2; int j=4; boolean d=(i>0)||(i++>4);//短路与&&:第一个为假就为假,第二个不再进行判断 System.out.println(d);//短路或||:第一个为真就为真,第二个不再进行判断 System.out.print
阅读全文
摘要:java的数据类型:分为基本数据类型和引用数据类型 基本数据类型: | 数据类型 | 字节大小 | | | | | boolean | 占1位 | | byte | 占1个字节 | | char | 占2字节 | | short | 短整型2字节 | | int | 占4字节 | | float |
阅读全文
摘要:Java数据类型拓展 整型拓展:二进制0b 八进制0 十六进制0x public static void main(String[] args) { // write your code here //二进制0b 八进制0 十六进制0x int i=010; //8 int j=0b10; //2
阅读全文