![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 50
知海漫步
一片汇聚灵感与智慧的天地。在这里,我们从书中经典篇章中汲取灵感,与你分享生活中的点滴感悟。每一篇内容都是对美好世界的深刻洞察,让我们在文字的海洋中遨游,发现更广阔的阅读世界。
展开
-
Java 高级编程-文件拷贝
1. 文件拷贝2. 文件夹拷贝1. 文件拷贝package IOKnowledge;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStrea...原创 2018-06-28 19:56:13 · 186 阅读 · 0 评论 -
Java 高级编程-IO编程,对象序列化&反序列化
1. 对象序列化基本概念2. 序列化与反序列化3. transient关键字 学习阿里云大学零基础学Java系列 Java高级编程1. 对象序列化基本概念几乎只要是Java开发就一定存在有序列化的概念,而正是因为有序列化的概念,逐渐也有了更多的序列化标准。所谓的对象序列化指的是将内存中保存的对象以二进制数据流的形式进行处理,可以实现对象的保存或者网络传输...原创 2018-07-12 21:14:36 · 180 阅读 · 0 评论 -
Java 访问修饰符public,private,protect,default的区别
访问修饰符 同一个类 同一个包 不同包中的子类 不同包的非子类 public √ √ √ √ protect √ √ √ × default √ √ × × private √ × × ×...原创 2018-08-04 11:13:54 · 1298 阅读 · 0 评论 -
Java String、StringBuffer、StringBuilder的区别
String、StringBuffer、StringBuilder的区别如下:String类是字符串的首选类型,其最大的特点是内容不允许修改StringBuffer类与StringBuilder类的内容允许修改StringBuffer是在JDK1.0的时候提供的,属于线程安全的操作;而StringBuilder是在JDK1.5的时候提供的,属于非线程安全的操作附:StringBuf...原创 2018-07-31 21:08:08 · 115 阅读 · 0 评论 -
Java类加载执行顺序
简要记录类的加载执行顺序:先说结论:父类静态(块/变量)–>子类静态(块/变量)–>父类普通(变量/块)–>父类构造器–>子类普通(变量/块)–>子类构造器具体执行过程:程序先找到main函数,不管此时有没有使用new进行创建对象,都会将涉及到的类(例如父类)进行类加载;发现Son类有一个父类Father类;初始化有关Father类的静态变量与静态块(顺...原创 2018-12-27 22:18:18 · 302 阅读 · 0 评论 -
Java集合-Map集合
集合类KeyValueSuper线程安全?数据结构HashMap允许为null允许为nullAbstractMap线程不安全JDK1.8 数组+链表+红黑树;JDK1.7 数组+链表TreeMap不允许为null允许为nullAbstractMap线程不安全红黑树ConcurrentHashMap不允许为null不允许为nullAb...原创 2019-01-02 13:05:08 · 130 阅读 · 0 评论 -
Java实现单向链表反转示例
例如有一单向链表54->30->37->61->1->60->25->76->60->95原链表头节点54,尾节点:95实现效果:95->60->76->25->60->1->61->37->30->54新链表头节点95,尾节点54实现原理:从头原创 2019-02-15 12:52:11 · 2754 阅读 · 2 评论 -
Java四种线程池示例
Java通过Executors提供四种线程池,分别为:newCachedThreadPool:缓存线程池,大小不受限newFixedThreadPool:指定大小线程池,能够控制最大并发数newScheduledThreadPool:定长线程池,支持定时及周期性执行任务newSingleThreadExecutor:线程池数量为1的线程池,单线程串行执行所有任务代码示例:package...原创 2019-03-05 22:10:37 · 461 阅读 · 0 评论 -
Java实现多线程的三种方法
实现多线程有三种方法继承Thread类实现Runnable接口实现Callable接口Java代码示例package thread;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.FutureTask;...原创 2019-03-05 22:39:23 · 1077 阅读 · 0 评论 -
Java编译期常量解释及其使用风险
编译期常量指的就是程序在编译时就能确定这个常量的具体值非编译期常量就是程序在运行时才能确定常量的值,因此也称为运行时常量定义上来说,声明为final类型的基本类型或String类型并直接赋值(非运算)的变量就是编译期常量,即:final int i = 4;final String str = "dasd";// 非编译期常量final String str1 = new Stri...转载 2019-03-12 12:29:30 · 390 阅读 · 0 评论 -
Java类加载机制
Java类加载分为5个过程:加载、验证、准备、解析、初始化、使用、卸载。如下图所示:1. 加载加载主要是将.class文件(并不一定是.class,可以是zip包、网络中获取)中的二进制字节流读入到JVM中。在加载阶段,JVM需要完成3件事:通过类的全限定名获取该类的二进制字节流;将字节流所代表的静态存储结构转化为方法区的运行时数据结构;在内存中生成一个该类的java.lang....原创 2019-03-17 22:37:50 · 160 阅读 · 0 评论 -
Java JDK动态代理示例
1. JDK动态代理原理JDK动态代理是java.lang.reflect.*包提供的方式,必须借助接口才能产生代理对象。在JDK动态代理中,要实现代理逻辑类必须实现java.lang.reflect.InvocationHandler接口,里面定义了invoke方法,并提供接口数组用于下挂代理对象。2. 动态代理实现步骤建立代理对象和真实对象的关系实现代理逻辑方法3. 代码示例...原创 2019-03-24 12:37:45 · 276 阅读 · 0 评论 -
Java CGLIB动态代理示例
1. CGLIB动态代理简介JDK动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。而cglib动态代理是利用asm开源包,对代理对象类的class文件加载进来,通过修改其字节码生成子类来处理。2. JDK动态代理与CGLIB区别JDK动态代理和CGLIB字节码生成的区别?JDK动态代理只能对实现了接口的类生成代理,而不能针对类...原创 2019-03-24 12:39:22 · 1088 阅读 · 0 评论 -
Java 高级编程-IO字节流与字符流
1. 简介2. 字节输出流OutputStream3. 字节输入流InputStream4. 字符输出流Writer5. 字符输入流Reader6. 字节流与字符流的区别7. 转换流 学习阿里云大学零基础学Java系列 Java高级编程1. 简介在Java.io包里面File类是唯一一个与文件本身有关的程序处理,但是File只能够操作文件本身而不能够操作文...原创 2018-06-27 21:29:31 · 268 阅读 · 0 评论 -
Java 高级编程-输入与输出支持
1. 打印流2. System类对IO的支持3. BufferedReader缓存输入流4. Scanner扫描流 学习阿里云大学零基础学Java系列 Java高级编程1. 打印流如果现在要想通过程序实现内容的输出,核心的本质一定要依靠OutputStream类完成,但是OutputStream类有一个最大的缺点,这个类中的数据输出操作功能有限(public...原创 2018-07-09 20:51:27 · 1086 阅读 · 0 评论 -
Java关键字
Java共有50个关键字abstract continue for new switch assert default if package synchronized boolean do goto private this原创 2016-11-13 14:04:56 · 420 阅读 · 0 评论 -
Java基础之构造器调用顺序
构造器调用顺序说明调用基类(父类)构造器,这个步骤不断反复递归下去,首先是构造这种层次的根,然后是下一个导出类(子类),直到最底层导出类按声明顺序调用成员的初始化方法调用导出类构造器的主体(当前main方法所在类构造器)代码示例package eight;import sevenChapter.Chess;/** * 构造器的调用顺序 * @author SLH * @date 20原创 2016-11-13 16:09:00 · 320 阅读 · 0 评论 -
Java基础之八大基本类型简介
八大基本类型4种整型2种浮点类型1种字符类型(char)1种boolean类型原创 2016-12-11 22:09:57 · 725 阅读 · 0 评论 -
Java 错误:java.io.EOFException
javaweb应用报错 java.io.EOFException 严重: IOException while loading persisted sessions: java.io.EOFException 严重: Exception loading sessions from persistent storage原因: tomcat对硬盘的session读取失败彻底解决办法一下: 将w原创 2016-11-20 14:19:33 · 1488 阅读 · 0 评论 -
Java8配置环境变量——window
右键选择 计算机→属性→高级系统设置→高级→环境变量 1. 系统变量→新建 变量名:JAVA_HOME 变量值:(jdk的安装目录,例如 D:\Program Files\Java\jdk1.8.0_111) 2. 在系统变量中找到 Path 变量,选择编辑 在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; (注意如果原来Path的变量值末尾原创 2017-01-08 11:21:33 · 12829 阅读 · 0 评论 -
eclipse中如何删除svn用户名和密码
在公司中一般都会碰到这种情况,老员工离职,新员工入职,这时候老员工使用的电脑上eclipse如何将svn的账号密码进行删除呢? 具体步骤 1.在C盘中搜索auth,找到auth这个文件夹 2.打开auth文件,删除其中的所有文件 3.重启eclipse原创 2017-03-05 16:45:35 · 5607 阅读 · 2 评论 -
Java连接Oracle(标准方式)
标准的Java连接Oracle数据库方式(针对Oracle12c)创建一个Java项目(Java program)导入ojdbc.jar jar包原创 2017-06-03 17:31:41 · 392 阅读 · 0 评论 -
Java jdbc连接mysql
java jdbc连接mysql原创 2017-08-15 12:42:14 · 257 阅读 · 1 评论 -
Java集合框架主要成员
Java集合框架主要成员(比较简单)原创 2017-09-10 10:44:45 · 382 阅读 · 0 评论 -
Java 集合自定义对象属性排序
对自定义的对象属性进行排序,一般是实现Comparable接口或实现Comparator接口1. 实现Comparable接口package CollectionKnowledge;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util...原创 2018-06-12 13:24:05 · 1775 阅读 · 0 评论 -
Java中读取xml文件自定义元素属性
刚好需要大批量从xml文件取值,写了个小demo,供参考xml文件action.xml内容如下<cmd-bean name="value"></cmd-bean>Java代码读取xml中的name属性值package XMLKnowledge;import java.io.IOException;import javax.xml.parsers.Do...原创 2018-06-07 21:25:49 · 3709 阅读 · 0 评论 -
Java 高级编程-File文件操作类
1. File类说明2. File类的基本使用3. File类深入操作4. 获取文件信息5. File操作案例:列出指定目录中的全部文件6. File操作案例:批量修改文件名称 学习零阿里云大学零基础学Java系列 Java高级编程1. File类说明在Java语言里面提供有对于文件操作系统操作的支持,而这个支持就在java.io.File类中进行...原创 2018-06-14 22:30:54 · 1235 阅读 · 0 评论 -
Java 高级编程-IO操作深入
1. 字符编码2. 内存操作流3. 管道流4. RandomAccessFile随机存储类 学习阿里云大学零基础学Java系列 Java高级编程1. 字符编码在计算机的世界里面只认0、1的数据,如果想描述一些文字的编码就需要对这些二进制的数据进行组合,所以才有了现在可以看见的中文,但是在进行编码的时候如果要想正确显示出内容则一定需要有解码,所以编码和解码肯定要采...原创 2018-07-01 21:35:08 · 513 阅读 · 0 评论 -
判断Java中map键值对中是否包含一个key
boolean b = map.containsKey(menuId);原创 2016-11-13 13:52:33 · 18351 阅读 · 0 评论