
Java笔记
myzksky
这个作者很懒,什么都没留下…
展开
-
java线程池原理及使用和处理流程
ThreadPool、线程池原理、线程池使用、ExecutorService使用原创 2025-04-18 20:30:38 · 151 阅读 · 0 评论 -
Json转为字符串指定顺序(Gson和FastJson)
Json转为字符串指定顺序(Gson和FastJson)原创 2022-11-25 14:28:58 · 3607 阅读 · 1 评论 -
java jvm堆栈小结
1、基本数据类型存放的都是栈中,String s = "a"; 存放栈String池中2、所有new出来的对象都是存放堆中,以下都是Object o = new Object();String s = new String("a");在创建对象的时候,先去查找String Pool中查找是否有"a"这个字符串,没有就新建,有则把该字符串的内存地址返回。...原创 2018-06-10 15:47:24 · 377 阅读 · 0 评论 -
java变量赋值互换
实例如下:package com.test;/** * @author Administrator * @date 2018/6/10 */public class TestSwitch { public static void main(String[] args) { int a = 2; int b = 5; // 方法...原创 2018-06-10 20:16:02 · 1282 阅读 · 0 评论 -
java查找排序二分法
实现快速排序之二分法:package com.test;/** * 二分法 * * @author Administrator * @date 2018/6/10 */public class TestTwoDivide { public static void main(String[] args) { int value = 5; in...原创 2018-06-10 23:53:29 · 243 阅读 · 0 评论 -
java设计模式之单例
1、第一种-->饱汉模式package com.test;/** * @author Administrator * @date 2018/6/9 */public class TestSingleTon { private TestSingleTon(){ } private static final TestSingleTon testSingl...原创 2018-06-10 23:59:52 · 133 阅读 · 0 评论 -
java生成随机数
生成随机数的两种方法:package com.test;import java.util.Random;/** * @author Administrator * @date 2018/6/11 */public class TestRandom { public static void main(String[] args) { for(int i = ...原创 2018-06-11 00:11:37 · 2050 阅读 · 0 评论 -
设计模式--适配器模式
适配器是一个转换中间件,在不修改原有接口代码的基础上,把两个不同的接口转换可以使用的模式,相当于转接头,转接口。原创 2018-06-26 00:30:39 · 120 阅读 · 0 评论 -
设置模式--观察者模式
1、观察者模式发生在一对多情况下,在多的这一端只要发生变化,就会通知一方。原创 2018-06-26 00:41:42 · 221 阅读 · 0 评论 -
java泛型
1、T为指定实体类型,可限制类型使用 <T extends E>2、T表示自定义泛型,T类型可以直接使用,类中直接对T进行操作3、?表示通配符泛型,?类型不能直接使用 只能对通用泛型的数据进行获取,或者移除,不能新增或者修改。4、泛型的限定: ? extends E:接收E类型或者E的子类型 ?super E:接收E类型或者...原创 2018-07-10 00:11:14 · 164 阅读 · 0 评论 -
java的Integer缓存整数介于-128到127之间
1、如果声明Integer对象的数据,则在-128到127之间不会生成新的对象,会使用缓存中的对象。2、double,float有可能会丢失精度,建议使用BigDecimal类型。原创 2018-07-10 00:50:16 · 1067 阅读 · 0 评论 -
2018最新手机号码的正则表达式
import java.util.regex.Pattern;/** * 手机号最新正则表达式 * 2018-07-10 */public class Test { /** * 号码段统计 * 130、131、132、133、134、135、136、137、138、139 * 141、144、145、146、147、148 * ...原创 2012-04-26 16:18:52 · 2423 阅读 · 0 评论 -
常量和枚举、常量类的区别
一、实体常量类/** * 实体常量类 * @author Administrator * @date 2018/7/21 */public class ConstClass { private static final String Success = "成功"; private static final String Fail = "失败";}1、JDK编...原创 2018-07-21 22:50:42 · 12926 阅读 · 4 评论 -
java设计模式--静态代理
1、定义通用接口/** * 定义通用接口 * @author Administrator * @date 2018/7/22 */public interface IBusiness { /** * 接口执行方法 */ void execute();}2、定义真实操作实现类/** * 真实操作实现类 * @author Admi...原创 2018-07-22 20:43:32 · 204 阅读 · 0 评论 -
获取腾讯新闻APP文章、真实视频地址解析
由于业务需要,需要抓取解析腾讯视频真实地址、文章中的数据。经过1天的摸索,终于分析出来了,步骤如下:一、获取发送Https请求文章地址返回的信息,经查看<html><body><div>中无任何文章信息,到这个地方可以确定,腾讯新闻文章是浏览器客户端进行解析数据装配的。此时就需要看js代码,发现里面的数据有unicode编码格式。需要把代码unicode转译...原创 2019-04-09 16:27:14 · 10173 阅读 · 2 评论 -
java equals和hashcode、==
一般而言:==:基本数据类型比较的是值,引用数据类型比较的是内存地址euqals:一般我们拿来比较对象内容,看equals的具体实现,比如Object比较的是内存地址hashcode:散列数值,equals相等,hashcode一定相等,反之hashcode相等,equals不一定相等,因为不同对象的hashcode有一定几率相等1、对于Object类来说 equals等价于==,查看JDK源代码...原创 2018-06-10 20:16:32 · 202 阅读 · 0 评论 -
java进制转换、hashcode、toString小结
package com.test;/** * @author Administrator * @date 2018/6/10 */public class TestHashCode { public static void main(String[] args) { TestHashCode testHashCode = new TestHashCode();...原创 2018-06-10 13:07:28 · 1165 阅读 · 0 评论 -
java命名规范
1、包名命名全部小写,多个单词最好分开,否则还是全部小写所有英文单词2、类静态、final成员变量全部大写,全部大写,单词之间使用_分割3、bean属性名单词首字母小写,后面单词首字母大写,符合驼峰命名法4、类方法是动词+名字命名,单词首字母小写,后面单词首字母大写,符合驼峰命名法5、../ 表示上一级目录. 表示当前目录/ 表示根目录...原创 2018-06-10 20:16:38 · 184 阅读 · 0 评论 -
java之List、Set、Map、Queue
1、list是有序的原创 2018-06-23 00:35:31 · 233 阅读 · 0 评论 -
File.getPath(),getAbsolutePath(),getCanonicalPath()中3个获取路径的方法对比
今天在获取文件路径的时候记录一下小问题:三个方法都是获取文件路径的,其中:getPath() 表示获取当前文件的相对路径getAbsolutePath() 表示获取当前文件的绝对路径+相对路径,不做解析getCanonicalPath() 表示获取当前文件的绝对路径,解析路径通过实例可以看到效果:a.txtD:\workspace\Test\TestWeb\src\..\a.txtD:\works...原创 2018-06-09 16:38:25 · 12496 阅读 · 0 评论 -
使用java把中文小写数字转化为阿拉伯数字
package com.test;/** * @author Administrator * @date 2018/6/8 */public class SwitchNumber { public static void main(String[] args) { SwitchNumber modifyFileName = new SwitchNumber()...原创 2018-06-09 16:42:19 · 4107 阅读 · 1 评论 -
(primitive)原生数据类型整数长度说明
byte类型 1个字节是8位 长度为2的8次方=256short类型 2个字节为16位 长度为2的16次方=65536int类型 3个字节为32位 长度为2的32次方=4294967296long类型 4个字节为64位 长度为2的64次方=18446744073709551616以上表示范围内多少个整数,一般都是以0为中间点的正负数访问例如:byte 表示 -128 到 127之间...原创 2018-06-09 17:04:44 · 222 阅读 · 0 评论 -
java中&和&&的区别,|和||的区别
在java的逻辑运算符中:&&(短路并),&(并)是有区别的&&和&都是表示并且,区别是&&只要第一个条件返回true,后面条件就不再判断执行,直接返回,执行短路操作。而&要对所有的条件都进行判断一次。看下面的程序:package com.test;/** * @author Administrator * @date...原创 2018-06-09 17:25:11 · 2151 阅读 · 2 评论 -
java中i++和++i的区别
i++是先赋值,在运算++i是先运算,在复制实例如下:package com.test;/** * @author Administrator * @date 2018/6/9 */public class TestAdd { public static void main(String[] args) { int a = 0; int b =...原创 2018-06-09 17:39:00 · 471 阅读 · 0 评论 -
java条件控制和三元表达式
循环有以下三种:while、do while、for三元表达式用法:1 > 0 ? "true" : "false";原创 2018-06-09 17:49:56 · 6682 阅读 · 0 评论 -
java 内部类与外部类的区别
非晶态内部类、静态内部类、非public类的区别package com.test;/** * @author Administrator * @date 2018/6/9 */public class Test2 { // 内部类 private class Test2C{ } // 静态内部类 private static class T...原创 2018-06-09 18:42:52 · 1332 阅读 · 0 评论 -
java数据结构
原生数据类型都是存放正在栈上,引用数据类型可能存放栈上,也可能存放堆上原创 2018-06-09 18:47:55 · 146 阅读 · 0 评论 -
java构造器详解
抽象类是有默认构造方法的普通类构造方法之间的调用可以使用this()来完成。this代表当前类的操作,静态块、静态方法中不能使用this关键字。package com.test;/** * @author Administrator * @date 2018/6/9 */public class TestConstructor { private String name;...原创 2018-06-09 21:31:53 · 654 阅读 · 0 评论 -
java相关英文单词
primitive:原生polymorphism:多态原创 2018-06-09 21:47:17 · 716 阅读 · 0 评论 -
java子类父类方法的调用
TestParent test = TestParent();test.testA();如果子类重写了父类的方法,会调用子类的方法,若未重写则调用父类的方法。package com.test;/** * @author Administrator * @date 2018/6/9 */public class TestParent { public void testA()...原创 2018-06-10 20:16:44 · 11070 阅读 · 0 评论 -
java接口和抽象类、static和final
1、抽象方法必须定义在抽象类中2、抽象类的抽象方法没有方法体3、抽象类中有构造函数4、抽象类中可以定义有方法体的方法5、抽象类不能直接new出来6、一个类只能继承一个抽象类1、接口中没有构造方法2、接口中的方法也是抽象的,不能有方法体,默认抽象方法abstract省略3、接口不能直接new出来4、接口中定义的方法体必须全部实现,不能漏5、接口方法的修饰符必须是public,可省略,static、f...原创 2018-06-10 00:25:29 · 742 阅读 · 0 评论 -
设计模式--策略模式
1、比如TreeMap接收的比较器,根据不同的比较器操作返回不同的结果就是策略模式2、策略模式高度解耦合3、策略模式用于抽象对于同一个对象的不同处理方式,把相同处理方式(内部状态)抽象成一个类,通过策略选择类选择产生对应的策略来处理输入的对象4、抽象策略角色:策略类通常由一个接口或者抽象类实现。5、具体策略角色:是包装了相关的行为和算法模块。6、环境角色:持有对策略类的引用,最...原创 2018-06-25 00:45:30 · 123 阅读 · 0 评论 -
java之list总结
1、list是基于数组的元素有序的结构,初始化capacity均为10,从JDK1.5开始:int newCapacity = (oldCapacity * 3)/2 + 1;从JDK1.7开始:int newCapacity = oldCapacity + (oldCapacity >> 1);2、list的add(object)添加数据到数组最后位置,add(index, obje...原创 2018-06-12 00:30:19 · 362 阅读 · 0 评论