自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 Synchronized 和Lock区别

Synchronized 和Lock区别1.Synchronized是内置的java关键字,Lock是一个java类2.Synchronized无法判断获取锁的状态,Lock可以判断是否获取到了锁3.Synchronized会自动释放锁,lock必须要手动释放锁,不然会死锁4.Synchronized线程1(获得锁,阻塞),线程2(等待,一直等):Lock锁就不一定会等待下去5.Synchronized可重入锁,不可以终端,非公平锁;Lock,可重入锁,是够公平可以自己设置,默认非公平,在()加上

2020-10-16 14:54:03 96 1

原创 sleep和wait的区别

sleep和wait的区别1.来自不同的类wait=>Objectsleep=>Thread2.关于锁的释放wait会释放锁,sleep睡觉了,抱着锁睡觉,不会释放!3.使用的方位是不同的wait必须在同步代码块中使用sleep可以在任何地方使用4.是否需要捕获异常wait不需要捕获异常sleep需要捕获异常...

2020-10-15 15:06:21 104

原创 什么时候会发生类初始化

什么时候会发生类初始化类的主动引用(一定会发生类的初始化)当虚拟机启动,先初始化main方法所在的类new一个类的对象调用类的静态成员(除了final常量)和静态方法使用java.lang.reflect包的方法对类进行反射调用当初始化一个类,如果其父类没有被初始化,则会先初始化它的父类类的被动引用(不会发生类的初始化)当访问一个静态域时,只有真正声明这个域的类才会被初始化.如:当通过子类调用父类的静态变量,不会导致子类初始化通过数组定义类引用,不会触发此类的初始化引用常量不会

2020-10-10 09:46:01 244

原创 类的加载与ClassLoader的理解

类的加载与ClassLoader的理解加载:将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时数据结构,然后生成一个代表这个类的java.lang.Class对象.链接:将Java类的二进制代码合并到JVM的运行状态之中的过程.验证:确保加载的类信息符合JVM规范,没有安全方面的问题准备:正式为类变量(static)分配内存并设置类变量默认初始值的阶段,这些内存都将在方法区中进行分配.解析:虚拟机常量池内的符号引用(常量名)替换为直接引用(地址)的过程.初始化:

2020-10-09 14:57:11 112

原创 获取Class类的实例

获取Class类的实例若已知具体的类,通过类的class属性获取,该方法最为安全可靠,程序性能最高.Class clazz = Person.class;已知某个类的实例,调用该实例的getClass()方法获取Class对象Class clazz = person.getClass();已知一个类的全类名,且该类在类路径下,可通过Class类的静态方法forName()获取,可能抛出空指针异常Class clazz = class.forName("demo01.Stude

2020-10-09 14:56:30 104

原创 元注解

元注解@Target:表示我们的注解可以用在哪些地方//表示该注解只能使用在类和方法上@Target(value = {ElementType.Method,ElementType.Type})@Retention 表示我们的注解在什么地方还有效//runtime(运行时,编译时,源码时有效)>class(编译时,源码时有效)>source(只在源码时有效)@Retention (value = RetentionPolicy.RUNTIME )@Documented

2020-09-29 09:49:10 174

转载 IO流思维导图

IO流思维导图

2020-09-25 16:59:03 117

原创 转换流InputStreamReader&&OutputStreamWriter

转换流InputStreamReader&&OutputStreamWriterInputStreamReader(转换输入流)继承自Reader:创建InputStreamReader对象,构造方法中传递字节输出流(FileInputStream)和指定的编码表名称 //编码表不一致会导致乱码使用InputStreamReader对象中的方法read读取文件释放资源//1.创建InputStreamReader对象,构造方法中传递字节输出流和指定的编码表名称InputSt

2020-09-24 11:35:37 171

转载 Jquery Validate用法简介

转自:https://www.cnblogs.com/hejunrex/archive/2011/11/17/2252193.html一导入js库二、默认校验规则(1)required:true 必输字段(2)remote:“check.php” 使用ajax方法调用check.php验证输入值(3)email:true 必须输入正确格式的电子邮件(4)url:true

2020-09-23 16:06:13 670

原创 IO流

IO流字节输出流的使用步骤: 内存–>硬盘 java程序–>JVM虚拟机–>OS操作系统–>OS写入数据的方法–>写入数据创建一个FileOutputStream对象,构造方法中传递写入数据的目的地调用FileOutputStream对象中的方法write,吧数据写入到文件中释放资源public class DemoFileOutputStream { public static void main(String[] args) t

2020-09-22 14:43:51 70

原创 如何利用IO流复制文件

如何利用IO流复制文件文件复制的步骤:创建一个字节输入流对象,构造方法中绑定要读取的数据源创建一个字节输出流对象,构造方法中绑定要写入的目的地使用字节输入流对象中的方法read读取文件使用字节输出流的中的方法write,把读取到的字节写入到目的地的文件中释放资源public class Demo01CopyFile { public static void main(String[] args) throws IOException { //1.创建一个字节输入

2020-09-22 14:43:02 220

原创 Lambda表达式

Lambda表达式使用前提:使用Lambda必须具有接口,切要求接口中有且仅有一个抽象方法使用Lambda必须具有上下文推断.也就是方法的参数活局部变量必须为Lambda对应的接口类型才能使用Lambda作为该接口的实例.Lambda表达式课省略的内容:(参数列表):括号中参数列表的数据类型,可以省略不写(参数列表):括号中的参数如果只有一个,那么类型和()都可以省略{代码块}:如果{}中的代码只有一行,无论是否有方绘制,都可以省略({},return,分号) 注意:要省略{},r

2020-09-21 09:53:58 45

原创 Lambda表达式的标准格式

Lambda表达式的标准格式有三部分组成:1. 一些参数2. 一个箭头3. 一段代码格式:(参数列表) -> {一些重写方法的代码}():接口中抽象方法的参数列表,没有参数,就空着;有参数就写出参数,多个参数使用逗号分割->:传递,把参数传递给方法体{}{}:重写接口的抽象方法的方法体public class DemoLambda{ public static void main(String[] args) { //使用匿名内部类的方式实现多线程

2020-09-17 11:00:14 130

原创 线程池的使用步骤

线程池的使用步骤使用线程池的工厂类Executors里面提供的静态方法newFixedThreadPool生产一个指定线程数量的线程池创建一个类,实现Runnable接口,重写run方法,设置线程任务调用ExecutorService中的方法submit,传递线程任务(实现类),开启线程,执行run方法调用ExecutorService中的方法shutdown销毁线程池(不建议执行)public class ThreadPool{ public static void main(Str

2020-09-17 09:53:31 2731

原创 位运算

位运算A = 0011 1100B = 0000 1101A&B = 0000 1100 全部为1才为1,否则为0A|B = 0011 1101 只要有一个为1,结果为1,否则为0A^B = 0011 0001 相同为0,不相同为1~B = 1111 0011 取A&B得值的反2*8 4个2相乘|| <<等比于乘2 >>等比于/22<<3int a = 10;in

2020-09-16 15:31:38 55

原创 如何在cmd运行java程序

如何在cmd运行java程序先找到程序所在的文件夹,Show in Explorer,在上面地址栏最前面输入cmd空格进入cmd窗口,窗口中输入javac 名称.java,再输入java 名称。

2020-09-16 15:31:06 287

原创 如何用javadoc生成java帮助文档

如何用javadoc生成java帮助文档找到要生成帮助文档的.java文件位置,在地址栏最前面输入cmd+空格,打开doc窗口。先输入javac+空格 文件名+.java,生成.class文件输入java+空格,文件名输入:javadoc -encoding UTF-8 -charset UTF-8 文件名.java然后在文件夹内打开index.html帮助文档...

2020-09-16 15:28:50 103

原创 匿名、静态代码块

匿名、静态代码块Public class Person{ //2 { System.out.println("匿名代码块"); } //1 static{ System.out.println("静态代码块"); } //3 public Person(){ System.out.println("构造方法"); }}执行顺序:静态代码块–>匿名代码块–>构造方法静态代码块只会执行一次。...

2020-09-16 15:28:29 103

原创 类型转化

类型转化低----------------------------------------------->高byte,short,char->int->long->float->double强制装换 高–>低自动装换 低–>高变量作用域类变量:方法外面,类里面,static修饰。实例变量:方法外面,类里面。局部变量:定义在方法里面。...

2020-09-16 15:27:47 55

原创 进制

进制二进制 0b八进制 0十进制十六进制 0xchar底层原理u0000-uffffchar c3 = ‘\u00ff’;尽量避免使用浮点数进行比较float:有限 离散 四舍五入 接近但不等于

2020-09-16 15:25:31 49

原创 多态

多态多态是方法的多态,属性没有多态存在条件:继承关系,方法需要重写,父类引用指向子类对象!Father f1 = new Son();Person 父类Student 子类Student s1 = new Student ();Person s2 = new Student ();Student能掉用的方法都是自己的或者继承父类的!Person父类型,可以指向子类,但是不能调用子类独有方法!...

2020-09-16 15:24:53 18

原创 解决线程安全的三个方法

解决线程安全的三个方法同步代码块Obj obj = new Obj();synchronized(obj){ //代码块 可能会阐释线程安全问题的代码}​ 当线程1进入到synchronized,他先会判断是否有锁(obj)对象,如果有,会拿走锁(obj)并且进入到代码块.此时如果线程2进到synchronized,会发现没有锁(obj)对象,该线程就会进入到阻塞状态.等到线程1执行完代码块的内容,线程1就会释放锁(obj),线程2拿到锁(obj)对象就会

2020-09-16 15:24:12 130

原创 多线程

多线程并发:交替进行并行:同时进行创建多线程:创建一个继承Thread类的类重写Thread类中的run()方法创建一个调用Thread类的对象,调用start()方法创建一个Runnable接口的实现类在实现类中重写Runnable接口的run方法,设置线程任务创建一个Runnable接口的实现类对象穿件Thread类对象,构造方法中传递Runnable接口的实现类对象调用Thread类中的start方法,开启心得线程执行run方法实现Runna

2020-09-16 15:23:23 38

原创 安装卸载jdk

卸载JDK删除JDK的安装目录删除JAVA_HOME产出path下关于java的目录java -version安装JDK百度搜索JDK8,找到下载地址下载电脑对应版本双击安装JDK记住安装路径配置环境变量我的电脑–>右键–>属性环境变量–>JAVA_HOME配置path变量java -version...

2020-09-16 15:22:03 73 1

原创 MarkDown学习

MarkDown学习#+空格二级标题三级标题四级标题字体Hello,World!Hello,World!Hello,World!Hello,World!引用java是世界上最受欢迎的语言之一大于号+空格分割线三减号或者三星号图片超链接点击跳转到博客园列表1顿号空格–有序列表ac-空格–无序列表abc表格名字性别生日张三男1997.1.1代码public...

2020-09-03 10:49:35 39

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除