Java侠客
码龄9年
关注
提问 私信
  • 博客:44,705
    44,705
    总访问量
  • 33
    原创
  • 1,130,921
    排名
  • 5
    粉丝
  • 0
    铁粉

个人简介:深漂Java高级开发工程师 7年Java开发经验,分享工作经验以及Java相关专业知识 帮助想要入门的,初中级的同学,少走弯路 希望能够结识热爱编程的朋友,一起学习一起进步 小楼昨夜又东风,聊聊编程,聊聊人生

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2016-01-04
博客简介:

android_jackzhou的博客

查看详细资料
个人成就
  • 获得11次点赞
  • 内容获得0次评论
  • 获得10次收藏
创作历程
  • 15篇
    2022年
  • 22篇
    2017年
成就勋章
TA的专栏
  • Java基础
    15篇
  • JavaScript
    12篇
  • React Native
    1篇
  • html
    1篇
  • NodeJS
    3篇
  • Java
    14篇
  • Maven
    1篇
  • SpringBoot
    1篇
兴趣领域 设置
  • 编程语言
    java
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Java中==和equals的区别

==运算符:1, 可以使用在基本数据类型变量和引用数据类型中2, 如果用在基本数据类型的比较中,比较两个变量保存的数据是否相等(不一定要类型相同,Java运算符会存在自动类型提升) 如果用在引用数据类型变量中,比较的是两个变量的地址值比如 int i = 10, double y = 10.0,那么i==y会等于trueequals方法的使用:1,是一个方法,不是运算符2,只能用在引用数据类型中3,object类中equals方法的定义,即类中不复写equals方法时的默认行为:
原创
发布博客 2022.04.08 ·
485 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java中不会触发类初始化的几个操作

一,Java中不会触发类初始化的几个操作:1,通过子类引用父类的静态字段,不会导致子类初始化2,通过数组定义来引用类,不会触发此类的初始化3,常量在编译阶段会存入调用类的常量池中,本质上没有直接引用到定义常量的类,因此不会触发定义常量的类的初始化。4,当调用目标类的静态变量或静态方法时,不会触发该类的代码块或构造方法的执行二,final类型的成员变量一定要初始化,可以在构造方法或者代码块中初始化final字段://构造方法初始化class Person { pu...
原创
发布博客 2022.04.07 ·
677 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Java中方法重写的权限修饰符

子类重写的方法的权限修饰符不小于父类被重写的方法的权限修饰符,子类不能重写父类中被private修饰的方法1,对于返回值:父类是void,子类一定是void如果父类是基本数据类型,子类只能是同样的基本数据类型2,如果父类是A类型,则子类返回的只能是A类或者A类的子类3,子类重写的方法抛出的异常类型不能大于父类被重写的方法抛出的异常类型解释:在编译的时候的异常是父类定义的,如果子类抛出的异常比父类的大,在运行的时候执行的是子类的方法,就会有代码风险4,子类和父类中的同名同参数的方法要么
原创
发布博客 2022.04.06 ·
1102 阅读 ·
2 点赞 ·
0 评论 ·
4 收藏

Java中的多态

在 Java 中实现多态有 3 个必要条件:1,满足继承关系2,要有重写3,父类引用指向子类对象,编译看左边,运行看右边对象的多态性只适用于方法,不适用于属性,属性的编译和运行都看左边多态是运行时行为: 重载是早绑定(静态绑定),编译期就确定了 重写是晚绑定(动态绑定),运行时才确定 重载不认为是多态,因为在编译期就确定了 多态的举例:Object obj = 1;System.out.println(obj);输出的结果是1,我们都知道Ob..
原创
发布博客 2022.04.06 ·
298 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java中Long缓存

Long 最被我们关注的就是 Long 的缓存问题,Long 自己实现了一种缓存机制,缓存了从 -128 到 127 内的所有 Long 值,如果是这个范围内的 Long 值,就不会初始化,而是从缓存中拿,缓存 初始化源码如下:private static class LongCache { private LongCache(){} // 缓存,范围从-128到127,+1是因为有个0 static final Long cache[] = new Long[-(-128)
原创
发布博客 2022.04.05 ·
1428 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java中的非法向前引用

非法向前引用的例子:那么为什么类似于i= "1234";这样的代码可以呢?这是因为Java对其中的某些情况做了“特许”,其中有一条就是“通过简单名称引用的变量可以出现在左值位置,但不能出现在右值的位置”,所以前面的代码可以,但System.out.println(i);不行,因为这是一个右值引用。其目的是避免循环初始化和其他非正常的初始化行为。什么是循环引用,看一下下面这个例子:privateinti=j;privateintj=i;如果没有前面说的强制检查,那么这两句代
原创
发布博客 2022.04.05 ·
372 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Java中的this关键字

通常情况下,调用当前对象的属性或方法,省略this关键字,特殊情况下,比如方法(或者构造器)的形参和类的属性同名时,我们必须显示调用this.String name;​public JTest(String name){ this.name = name;}this调用构造器1,我们在类的构造器中,可以显示的使用“this(形参列表)”方式,调用指定的本类的其他构造器2,构造器中不能通过this(形参列表)方式调用自己3,如果一个类中有n个构造器,那么最多有n-1个构造器
原创
发布博客 2022.04.04 ·
286 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

面向对象和面向过程的区别

面向过程:强调的是功能行为,以函数为最小单位,考虑怎么做面向对象:强调具备了功能的对象,以类/对象为最小单位,考虑谁来做举例说明:人把大象塞到冰箱里1:面向过程设计,开发三个函数1)把冰箱门打开2)抬起大象,塞进冰箱3)把冰箱门关闭2:面向对象设计,设计三个类,每个类有具体功能class 人{ 打开(冰箱){ 冰箱.开门(); }}​class 冰箱{ 开门();}​class 大象{ 进入();}...
原创
发布博客 2022.04.02 ·
105 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java数组初始化和工具类的使用

1,一维数组的初始化方式1,int[] a = new int[]{1,2};2,int[] b = new int[2];3,int[] c = {1,2};//类型推断2,二维数组的初始化方式1,int[][] k = new int[i][j];2, int[][] m = new int[3][];3,int[][] n = new int[3][2];动态初始化int[][] k = {{},{},{},{}};int[][] k = new int[][]{{},{
原创
发布博客 2022.04.02 ·
797 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Scanner类中next()方法和nextLine()方法的区别

Scanner类中next()方法和hasNext()方法的区别从键盘输入值Scanner scanner = new Scanner(System.in);String next = scanner.next();System.out.println(next);next()方法只有扫描到有效字符后才会结束输入(用户没有输入的时候不会结束);next()方法会自动去掉空白(例如回车、空格等),也不能得到带有空格的字符串;输入hello world,结果只会出来hello,空格以及后面的w
原创
发布博客 2022.04.02 ·
534 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

BigDecimal精度丢失问题

使用BigDecimal的构造函数进行封装Double、Float型数值的时候,实际创建的值与我们期望的值会出现误差,因此在进行运算时会出现精度的丢失。如何避免:使用new BigDecimal(String);public BigDecimal(double val)1.此构造方法的结果有一定的不可预知性。有人可能认为在 Java 中写入 new BigDecimal(0.1) 所创建的 BigDecimal 正好等于 0.1,但是它实际上等于 0.10000000000000000555111
原创
发布博客 2022.04.01 ·
1077 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

Java中为什么局部变量需要显式设置初始化值?

对于成员变量而言,其赋值和取值访问的先后顺序具有不确定性。比如在下面的代码中,name的赋值可以发生在调用dumpField方法之前,也可以发生在调用dumpField方法之后。这是在运行时发生的,在编译器来看确定不了的。编辑切换为居中添加图片注释,不超过 140 字(可选)对于没把握的事情,javac是不会去做的,这种事情交给运行时的JVM就可以了。编辑切换为居中添加图片注释,不超过 140 字(可选)而对于局部变量来说,其访问的先后顺序是确定的假使局部变量可以
原创
发布博客 2022.03.31 ·
406 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java数据类型

1,java数据类型基本数据类型:整型:byte/short/int/long(默认为int类型,默认值为0)浮点型:float/double(默认为double类型,默认值为0.0)字符型:char(默认值为‘\u0000’)布尔型:boolean(boolean值占4个字节,boolean数组占1个字节,默认值为false)引用类型:引用类型的默认值为null类(class)接口(interface)数组(array)2,浮点数叫法的由来:浮点类...
原创
发布博客 2022.03.30 ·
143 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JVM,Jdk和Jre的关系

JRE中包含了JVM和Java的标准类库,比如我们常用的Java lang包下面的类就是放在标准类库中JDK包含了JRE和一些开发工具集,比如我们常用的java,javac等命令我们安装JDk的时候,会默认包含jre...
原创
发布博客 2022.03.29 ·
4738 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java中设置Path、classpath、JAVA_HOME的作用?

Path:Windows系统在dos命令行中执行命令的时候,会先从当前路径去找,如果找不到,就会到path路径下查找,如果没有设置Path,那么执行java命令的时候只能进到jdk的安装目录里面才能执行,因为设置了Path,所以我们可以在系统的任意路径下面执行java命令CLASSPATH:作用是指定类搜索路径,要使用已经编写好的类,前提是能够找到它们了,JVM就是通过CLASSPATH来寻找类的.class文件。我们需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置.
原创
发布博客 2022.03.29 ·
686 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

SpringBoot学习笔记

spring boot 启动方式:1 直接在程序application类中执行run 2.cd进入项目文件夹 执行 mvn spring-boot:run3.cd进入项目文件夹 执行 mvn install (先对项目进行编译), cd进入target文件夹会看到刚才生成的一个 xxx-0.0.1-SNAPSHOT.jar包, java -jar xxx-0.0.1-SNAPSHOT.ja
原创
发布博客 2017.12.05 ·
356 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Maven

Maven项目的目录约定MavenProjectRoot(项目根目录)   |----src   |     |----main   |     |         |----java ——存放项目的.java文件   |     |         |----resources ——存放项目资源文件,如spring, hibernate配置文件   |     |--
原创
发布博客 2017.11.07 ·
232 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

splice方法

定义和用法splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。注释:该方法会改变原始数组。语法arrayObject.splice(index,howmany,item1,.....,itemX)参数描述index必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
原创
发布博客 2017.09.29 ·
679 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JPA 级联更新去孤子

在是使用JPA(hibernate)配置实体关系中,经常会遇到通过父实体对象级联批量更新子对象的需求,而且每次更新必须采用合并方式,即原来的所有子删除,只保留本次保存的所有子实体对象。例子:A为父对象,持有一个B的集合,A与B的关系为oneToMany. 第一次保存:设置A下的B集合成员为:1,2,3, 保存A后,B对象对应的数据表为:1,2,3第二次保存:设置A下
转载
发布博客 2017.09.29 ·
701 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Apache压力测试工具

打开Apache服务器的安装路径,在bin目录中有一个ab.exe的可执行程序,就是我们要介绍的压力测试工具。在Windows系统的命令行下,进入ab.exe程序所在目录,执行ab.exe程序。注意直接双击无法正确运行。
原创
发布博客 2017.09.21 ·
333 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多