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