摘要:
一、结论 我先把结论放在前头,在java中,传递的对象如果是基础类型的话,就会直接将值传递过去(深拷贝),传递的对象是需要new的话,就是将对象的地址传递过去(浅拷贝)。 这个也困扰了我很久,c语言里还有指针可以区分,而java中就没有指针了,就很难区分了。 二、分析 1.直接上代码 package 阅读全文
摘要:
七大设计原则的目的:让程序低耦合,高复用,高内聚,易扩展,易维护。 前言 这段时间也是比较空闲,所以就想学习学习提升自己。 之前也是一直听说七大设计原则,还有五大、六大啥的,其实都差不多,只是多和少的问题。这七大设计原则都是前人总结出来的面向对象开发的经验,而且也是23种设计模式的根本,我觉得非常有 阅读全文
摘要:
Lambda表达式 为什么会有Lambda表达式 要说Lambda表达式,就一定要先说一下匿名类了,像使用Thread时,要创建一个Runnable接口的实现类放入Thread的构造方法中,一般情况下都是采用内部类的形式来创建的 例如 Thread thread1=new Thread(new Ru 阅读全文
摘要:
对象的生命周期 Java对象在JVM中的运行周期大致上分为七个阶段,创建阶段(Creation)、应用阶段(Using)、不可视阶段(Invisible)、不可到达阶段(Unreachable)、可收集阶段(Collected)、终结阶段(Finalized)与释放阶段(Free) 用了那么久的Ja 阅读全文
摘要:
一、为什么会有四种引用 01 在一开始当一个对象不被引用(就是没有属性/变量引用,例如Object ob=new Object();ob=null;)时,就会被JVM自动回收,在没有等于null之前就是强引用。 打个比方,就像你去餐厅吃饭,你站在位置上就是引用了这个位置,服务员(JVM)就不会过来收 阅读全文
摘要:
类初始化过程 需要类加载并初始化的时机 一个类要创建一个实例 main方法所在的类 子类要初始化时,需先加载并初始化父类 类初始化的过程 一个类初始化就是执行<clinit>()方法(cl==>class) <clinit>()方法由静态变量声明与赋值和静态代码块组成 <clinit>()方法中的静 阅读全文
摘要:
报错提示 snmpwalk : 无法将“snmpWalk”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保 路径正确,然后再试一次。 所在位置 行:1 字符: 1 + snmpWalk -v 2c -c public 127.0.0.1 1.3.6.1 阅读全文
摘要:
报错 FindBugs: May expose internal representation by incorporating reference to mutable object This code stores a reference to an externally mutable obj 阅读全文
摘要:
中文一传到数据库就变成? 解决方法 修改idea或eclipse的字符集,与数据库的一致 或 链接数据库的时候加上字符集设置 `链接数据库的地址`?useUnicode=true&characterEncoding=utf8 //上面报错用下面这个 //?useUnicode=true&ch 阅读全文
摘要:
我们在安装Java环境时,需要用到这样两个文件 然后还需要配置环境变量JAVA_HOME、CLASSPATH 但是,却有很多人不知道配置JDK和JRE是干嘛的 可以看出JDK和JRE是包含关系的,下面会更加进一步地解释 01 JVM 扯到JDK和JRE,那就一定要扯一下JVM(Java Virtua 阅读全文