自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 (软件构造06)Java深拷贝与浅拷贝

浅拷贝: (1)对于基本数据类型的成员对象,因为基础数据类型是值传递的,所以是直接将属性值直接赋给新的对象。基础类型的拷贝,其中一个对象修改该值,不会影响另一个。 (2)对于引用类型,比如数组或者对象,因为引用类型是引用传递,所以浅拷贝只是把内存地址赋给了成员变量,它们指向同一内存空间,改变其中一个,会对另一个有影响。 样例: List<FlightEntry<Plane>> list = new ArrayList<FlightEntry<Plane>>()

2020-07-11 21:11:01 100

原创 (软件构造05)匿名类总结

最早在软件构造实验三中的GUI实现中用到了匿名类,当时学习java Swing的时候,就是单纯的将示例代码直接套用,而自己并不清楚匿名类的使用规则和使用场合,后来在第七章线程的部分在生成新的线程对象的时候有一种方法就是使用匿名类的方法,所以本文对匿名类做一些简单的总结。 Java 中可以实现一个类中包含另外一个类,且不需要提供任何的类名直接实例化。**主要是用于在我们需要的时候创建一个对象来执行特定的任务,可以使代码更加简洁。**匿名类是不能有名字的类,它们不能被引用,只能在创建时用 new 语句来声明它们

2020-07-03 16:40:45 244

原创 (软件构造04)进程API及ProcessBuilder的扩展

本文对第七章进程的内容部分进行一些扩展: Java中的进程API在Java5之前还是非常原始的,开启一个新进程唯一的方式是调用Runtime.getRuntime().exec() ,直到Java5发布之后,一些更加简明的开启新进程方式被封装到了ProcessBuilder 中。 下面是对一些具体功能的介绍及举例: 1、如何显示当前进程信息: 我们通过调用java.lang.ProcessHandle.Info 可以获取诸多进程的相关信息: (1)用于开启此进程所使用的命令 (2)命令中传递的参数 (3)开

2020-06-28 21:34:22 177

原创 软件构造(03)工厂方法总结

软件构造(03)工厂方法总结 之所以把工厂方法单列出来作为一节进行阐述,是由于我在实验三种并没有把这一块的内容完成的很好,所以这篇博客将对工厂方法进行阐述并总结。 定义: 定义一个工厂类,根据传入的参数不同返回不同的实例,被创建的实例具有共同的父类或接口。 适用场景: 其实由定义也大概能推测出其使用场景,首先由于只有一个工厂类,所以工厂类中创建的对象不能太多,否则工厂类的逻辑就太复杂了,其次由于工厂类封装了对象的创建过程,所以客户端应该不关心对象的创建。总结一下适用场景:   (1)需要创建的对象较少。  

2020-06-16 22:17:11 157

原创 (软件构造02)异常处理总结

软件构造课程实验四针对异常处理方面做了比较细致的要求,现在对异常处理做一下总结。 异常处理: 异常:程序执行中的非正常事件,程序无法再按预想的流程执行将错误信息传递给上层调用者,并报告“案发现场”的信息 return之外的第二种退出途径。 异常的种类: 运行时异常:由程序员在代码里处理不当造成程序源代码中引入的故障所造成的 ;例如:rrayIndexOutOfBoundsException, NullPointerException。 如果在代码中提前进行验证,这些故障就可以避免 其他异常:由外部原因造成程

2020-06-16 20:30:19 262

原创 (软件构造01)浅谈+总结设计原则

Lab3已经过去了一周左右,从课上老师的传授到实验中自己的摸索,对软件构造中的设计模式有了一点自己的认识,本文中我就从自己的经验出发,对设计模式进行一些总结。【我总结的方法分为三个部分:1、自己理解的通俗解释 2、举例 3、目的总结,可能还会添加一些自己在Lab3中的应用】 1、开闭原则(Open Close Principle) (1)自己的理解:软件模块应该对扩展开放,对修改关闭。 (2)举例:在程序需要进行新增功能的时候,不能去修改原有的代码,而是新增代码,实现一个热插拔的效果(热插拔:灵活的去除或添

2020-05-24 21:49:51 203

转载 JVM及Java垃圾回收技术

JVM: Java 虚拟机 Java 虚拟机(Java virtual machine,JVM)是运行 Java 程序必不可少的机制。JVM实现了Java语言最重要的特征:即平台无关性。原理:编译后的 Java 程序指令并不直接在硬件系统的 CPU 上执行,而是由 JVM 执行。JVM屏蔽了与具体平台相关的信息,使Java语言编译程序只需要生成在JVM上运行的目标字节码(.class),就可以在多...

2020-04-20 08:46:40 109

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除