- 博客(6)
- 收藏
- 关注
原创 深拷贝和浅拷贝区别是什么?
这个其实是需要我们知道计算机中,信息的内存地址与空间的关系,多的不说,上图,一看就懂。clas Test{ int a = 1; int b = 2;}首先我们需要知道1个内存地址 = 1个字节(Byte) = 8位(bit) ,从上面例子来看,int型占据4个内存地址,我们代码中创建变量后,计算机会为a和b分配了4个内存地址,这一以来,我们只需要知道a和b的内存起始地址(首地址),再加4,就是a和b实际在计算机中的地址,如下图示:而我们的深/浅拷贝的区别也就建立在上面说的这些
2021-01-11 09:42:07 339
原创 java中成员变量和局部变量有哪些区别?
先来看下总结吧,主要有以下一些区别:1.变量定义位置成员变量:类中,方法外,一种是有static修饰,一种是实例变量没有static修饰局部变量:形参/非静态代码块中2.修饰符使用成员变量:public、protected、private、final,static,volatile,transient局部变量:只有final3.作用域成员变量:当前类中的this,在其他类中的对象名访问,静态变量:在当前类中的类名.,在其他类中的类名.或对象名.访问局部变量:局部变量冲声明处开始,到所属的
2021-01-09 14:54:02 684
原创 java为什么可以跨平台?
前提引言:java是一种跨平台语言,那什么是跨平台?为什么需要跨平台?怎么实现?为什么跨平台?当我们完成业务代码实现后,会有多种部署环境选择(操作系统),比如winodws、linux,不同的系统之间底层实现是不一样的,要想同一份代码在不同的系统上运行,就需要一种跨平台机制来屏蔽底层系统之间的差异。java跨平台实现?首先需要了解一下java的运行机制,用一张图来简单展示一下,java从编译到运行的过程!解决办法:sun公司为不同的平台提供了相对应的jvm版本,针对开发解释器,实现差异屏蔽。
2021-01-09 14:09:17 463
原创 Java 传值和传引用的区别?
前提引言:要理清这个问题需要明确几个问题?什么是值?什么是引用?如何区分是传的值还是引用?先看区别:传值:传递的是值的副本。方法中对副本的修改,不会影响到本身。传引用:本质传递的就是地址,此时,形参和实参指向同一个内存地址。对副本的操作会影响本身,单如设置为null,重新指向其他对象等操作,则不会。注意:string和包装类不会被改变直接上代码演示://值传递public class ValueTest { public static void main(String[] ar
2021-01-09 13:58:46 546
原创 java关键字有哪些?
权限控制关键字作用public开放访问protected同包内访问private本类访问类/接口关键字作用class类定义abstract抽象类/方法定义interface接口定义implements接口实现extends类继承new类对象创建条件关键字作用if条件成立判断else分支选择switch条件开关caseswitch条件分支defau...
2021-01-09 10:51:52 206
原创 我们配置的jdk环境变量到底是干啥的?
JAVA_HOME:jdk的安装的根目录目的:(1)为了方便引用,在配置别的变量项时直接引用(2) 变更地址时只需要在这里改就好。CLASSPATH:配置jdk的bin目录路径和jre的bin目录路径目的:(1)配置class字节码的路径,程序通过此路径找编译后的字节码文件(2)swing开发需要配置dt.jarPath:配置jdk的bin目录路径和jre的bin目录路径(设定执行命令的搜索路径)(1)在任何路径下就可以仅用java来执行命令(说白了就是方便,(当你在命令提示符窗口输入你个
2021-01-09 10:04:55 435
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人