java体系
蒙太纳奇
如狼一样的不息
展开
-
java-file体系
1.基础操作 File f = new File("D:/money.zip");//初始化文件 System.out.println("判断是否存在:"+f.exists()); System.out.println("判断是否是文件夹:"+f.isDirectory()); System.out.println("判断是否是文件...原创 2019-10-14 19:48:57 · 174 阅读 · 0 评论 -
java基础之数字与字符串
1.装箱与拆箱 a.所有的基本数据类型都有对应的类类型,这些类类型均为Number的子类。 b.装箱,基本类型转封装类: Integer it = new Integer(i); 拆箱,封装类转基本类型: int i2 = it.intValue(); c.主动装箱:不用调用构造方法,使用=的方法,把基本数据类型转化...原创 2019-10-14 19:27:49 · 147 阅读 · 0 评论 -
java基础1
1.逻辑运算符a.&& 和& 的对比:两者同时为true时返回true A && B 当表达式A为true时,才会进行表达式B的运算;即当表达式A为false时不会进行表达式B的运算; A & B 不管表达式A是否为true,均会进行表达式B的运算; 故在实际中经常使用A && B,可以减少程...原创 2019-10-14 07:52:52 · 165 阅读 · 0 评论 -
java关键字
访问控制Private Default Protected Public 类,方法和变量修饰符abstract class extends final implements interface native newstatic strictfp synchronized transient v...原创 2019-07-19 11:22:36 · 83 阅读 · 0 评论 -
final
类该类不允许继承,final类的所有的方法,会被隐式执行为final方法该类不允许被重写,只有在想明确禁止该方法在子类中被覆盖的情况下才将方法设置为final的类的private方法会隐式地被指定为final方法变量如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象。与普通变...原创 2019-07-19 11:22:27 · 61 阅读 · 0 评论 -
java内存模型
qq_38331606方法区用于存放已被虚拟机加载的类信息,常量,静态方法;程序编译时已分配完成,在程序整个运行期间均存在运行时常量池:字面量,符号引用Java栈线程私有;用于存放方法的局部变量表(或者引用),动态链接,方法入口等线程请求的栈深度大于虚拟机允许的栈深度,StackOverFlowError;虚拟机栈可动态扩展,扩展时无法申请到足够的内存,OutOfMem...原创 2018-11-01 08:09:52 · 114 阅读 · 0 评论 -
Java常量池技术
Java常量池技术介绍当需要一个对象时,从池中去获取(如果池中没有,就创建一个并放入池中),当下次需要相同变量的时候,不用重新创建,从而节省空间。Class文件中的常量池在编译期被确定,并被保存在已编译的.class文件中的一些数据。它包括了关于类、方法、接口等中的常量,也包括字符串常量和符号引用。字面量:如文本字符串,声明为final的常量值 符号引用:属于编译方面的原...原创 2018-11-01 08:09:46 · 312 阅读 · 0 评论 -
自定义类加载器源码实现
1.自定义类加载器继承ClassLoader,重写findClass()方法package com.wpao.classloader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;//自定义类...原创 2018-11-01 08:08:53 · 124 阅读 · 0 评论 -
类的加载机制
类的加载机制Jvm的运行流程编译为class文件为统一完成,但是class的加载只有在调用时才启用。跨平台的原因是不同平台的jdk封装了不同平台的指令,将代码解析为对应平台识别的机器指令。类的加载流程图加载,连接(验证,准备,解析),初始化,使用,卸载加载:查找和导入Class文件 根据全限定类名,将class文件以字节流方式读入方法区,并生成Cla...原创 2018-11-01 08:08:42 · 91 阅读 · 0 评论 -
类加载器以及双亲委派模式
类加载器以及双亲委派模式类加载器ClassLoader类的加载流程的"加载"阶段是由类加载器完成的。JVM什么时候加载.class文件当执行new操作时候当执行Class.forName(“包路径 + 类名”)分类启动类加载器(Bootstrap ClassLoader)C++编写;为ExtClassLoader的父类,但是通过ExtClas...原创 2018-11-01 08:08:34 · 300 阅读 · 0 评论 -
Java 集合系列目录(Category)
01.Java 集合系列01之 总体框架02.Java 集合系列02之 Collection架构03.Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例04.Java 集合系列04之 fail-fast总结(通过ArrayList来说明fail-fast的原理、解决办法)05.Java 集合系列05之 LinkedList详细介绍(源码解析)和使用...转载 2019-06-28 13:56:27 · 665 阅读 · 0 评论 -
反射
反射概述反射,即通过特定的方法(Class.forName,Person.class,p.getClass),获取类的字节码文件;进而将对应的属性,构造器,方法,通过反射获取对应的Field,Constructor,Method等。作用:根据类的全路径,获取对应的字节码文件Class信息获取Class对象的三种方式 通过类名获取 Class c = Person.c...原创 2019-07-24 16:30:06 · 148 阅读 · 0 评论 -
流,序列化,深拷贝
流的分类按照流的方向:输入流(inputStream)和输出流(outputStream)。按照实现功能分:节点流(可以从或向一个特定的地方(节点)读写数据;如 FileReader)和处理流(是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写;如 BufferedReader。)按照处理数据的单位:字节流和字符流。字节流继承于 InputStream 和 Outpu...原创 2019-07-24 16:30:46 · 239 阅读 · 0 评论 -
Java常量池技术
介绍当需要一个对象时,从池中去获取(如果池中没有,就创建一个并放入池中),当下次需要相同变量的时候,不用重新创建,从而节省空间。Class文件中的常量池在编译期被确定,并被保存在已编译的.class文件中的一些数据。它包括了关于类、方法、接口等中的常量,也包括字符串常量和符号引用。字面量:如文本字符串,声明为final的常量值符号引用:属于编译方面的原理,如类和接...原创 2019-07-25 11:49:07 · 88 阅读 · 0 评论 -
BigDecimal
BigDecimal 构造方法 public BigDecimal(int val) public BigDecimal(String val) 优先使用 public BigDecimal(double val) 使用 public BigDecimal(Double.toString(double))进行替代;因为Double的结果是不可预知性的,而String 构造方...原创 2018-10-31 07:46:46 · 103 阅读 · 0 评论 -
HttpRequest get/post请求测试
package com.wpao.util;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.URL;import java.net.URLConnection;i...原创 2018-11-01 08:08:15 · 2093 阅读 · 0 评论 -
java基础1
1.Java 中的多态的机制父类或接口定义的引用变量,可以指向子类的实例对象;而程序调用的方法,在运行期才动态绑定。public、private、protected, default 修饰符 当前类 同 包 子 类 其他包 public √ ...原创 2019-07-26 11:05:49 · 83 阅读 · 0 评论 -
equals()和hashCode
equals()和hashCodeequals()和hashCode如果两个对象相同(equals 方法返回 true),那么它们的 hashCode 值一定要相同;如果两个对象的 hashCode 相同,它们并不一定相同。但容易造成Set等使用哈希存储的系统存取性能急剧下降。equals()的特点:自反性,对称性,传递性,一致性自反性(x.equals(x)必须返回 t...原创 2019-07-25 11:50:17 · 95 阅读 · 0 评论 -
clone
设计目的:用于产生一个和原对象A相同的对象B,且对B的改动不影响到A的值new 一个对象的过程和 clone 一个对象的过程区别new :1.按照对应的类型分配对应大小的内存空间;2.调用构造函数填充各个域;3.将该内存的地址赋值给对应的引用。Clone():1.按照对应的类型分配对应大小的内存空间;2.使用原对象中对应的各个域填充新对象的域;3.将该内存的地址赋值给对应的引用。c...原创 2019-07-26 11:05:42 · 165 阅读 · 0 评论 -
异常架构
异常机制异常架构以及分类常见的 RuntimeExceptionNullPointerException ,ClassNotFoundException ,NumberFormatExceptionIndexOutOfBoundsException ,IllegalArgumentException ,ClassCastExceptionNoClassDefFou...原创 2019-07-26 11:05:33 · 146 阅读 · 0 评论 -
BigDecimal
构造方法public BigDecimal(int val)public BigDecimal(String val)优先使用public BigDecimal(double val)使用 public BigDecimal(Double.toString(double))进行替代;因为Double的结果是不可预知性的,而String 构造方法是完全可预知的运算方...原创 2019-07-25 11:50:11 · 81 阅读 · 0 评论 -
常用数据类型
byte,short, int ,longbyte,1个字节,1个字节,最小的存储单元,-128< ~ 127,默认值为0。其中-128为[1000 0000],不存在原码,计算机中存储的是补码short,2个字节-32768 ~ 32767,不常用。int,4个字节最常用,默认数据类型,-2^31-1~2^31 (21 亿)。long,8个字节通常用于...原创 2019-07-25 11:49:22 · 160 阅读 · 0 评论 -
包裹数据类型
int 和 Integer,以及拆箱装箱机制int 的包装类就是Integer,从 Java 5 开始引入了自动装箱/拆箱机制,使得二者可以相互转换。如果整型字面量的值在-128 到 127 之间,那么不会 new 新的 Integer 对象,而是直接引用常量池中的 Integer 对象。包装类型- 原始类型: boolean,char,byte,short,int,long...原创 2019-07-25 11:49:17 · 317 阅读 · 0 评论 -
类型转换
自动转换byte-->short-->int-->long-->float-->double强制类型转换①会损失精度,产生误差,小数点以后的数字全部舍弃。②容易超过取值范围。隐式的强制类型转换short s1 = 1; s1 = s1 + 1; 需要强制转换类型才能赋值给 short 型s1short s1 = 1; s1 += ...原创 2019-07-25 11:49:12 · 63 阅读 · 0 评论