- 博客(6)
- 收藏
- 关注
原创 GC+JVM
1.内存管理模型①以对象的方式管理内存,每个对象占据内存中连续的一段,分配在堆中。对象引用可以指向堆中的其他对象。非基本数据类型的对象等价于数据引用。②基于栈和堆的内存管理都是动态分配,即在运行时动态分配内存,建立新的内存对象。而静态内存分配在编译阶段就已经确定好了内存分配。③每个线程都有其线程栈,各自管理,彼此之间不可见。多线程之间传递数据,通过复制而非引用。栈无法支持复杂的数据类型。所有的局部的基本数据类型都在栈上创建。④本地方法栈、PC⑤Method Area(hotspot中称为perm,
2020-07-04 17:05:39
322
原创 维护、异常、调试
1.可维护性的度量指标圈复杂度:代码控制流执行路径的数量。代码行数。可维护性指数:根据循环复杂度、代码行数、注释密度等计算的一个指数。继承的层数。类之间的耦合度。单元测试覆盖度。2.内聚、耦合内聚,指的是同一个模块之间的相互联系耦合,指的是不同模块之间的相互联系高内聚、低耦合,指的是各个模块之间的独立性要强,模块内部的相关性要强、尽量只负责一项任务。3.正则语法、正则表达式首先要注意,“\”这个字符在java里是转义字符,在正则语言里也是转义字符,这就导致了“\”是java转义字符,
2020-07-04 17:03:42
160
原创 复用
1.里氏替换原则里氏代换原则是面向对象设计的基本原则之一。 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。LSP 是继承复用的基石,只有当派生类可以替换掉基类,且软件单位的功能不受到影响时,基类才能真正被复用,而派生类也能够在基类的基础上增加新的行为。类型替换:①子类型只能增加而不能删除方法②子类型需要实现抽象类中所有未实现的方法③子类型中重写的方法,它的返回值必须是相等类型或是协变类型。④子类型中重写的方法,它的返回值必须是相等类型或是逆变类型(java不支持)。⑤子类型中重写
2020-07-04 17:00:09
134
原创 抽象数据类型+面向对象编程基础
1.基本数据类型、引用数据类型基本数据类型1、在基本数据类型中,除了boolean类型所占长度与平台有关外,其他数据类型长度都是与平台无关的。比如,int永远占4个字节(1 Byte = 8 bit)。2、void不是基本数据类型3、基本数据类型的默认值仅在作为类中属性时生效,在方法内部必须先对基本数据类型变量赋值后才能使用,否则编译不通过。引用数据类型引用类型(reference type)指向一个对象,不是原始值,指向对象的变量是引用变量。在java里面除去基本数据类型的其它类型都是引
2020-07-04 16:53:39
191
原创 软件构造基础
1.软件构造的多维度视图按阶段划分:构造时/运行时视图按动态性划分:时刻/阶段(形态)视图按构造对象的层次划分:代码(逻辑)/构件(物理)视图2.阶段划分、各阶段活动时刻阶段代码构件代码构件编译时源代码、抽象语法树、类和接口的属性、方法包、文件、静态链接、库、测试用例、编译脚本代码改动配置项、版本控制运行时代码快照、堆快照包、库、动态链接、配置(加载时)、数据库、中间件、硬件异常栈轨迹、多线程同步、执行跟踪(代码层面)事件日志、多进程、分布式进程(构件、系统层面)过
2020-07-04 16:42:13
194
原创 计算机系统大作业:程序人生-Hello’P2P
本文通过本学期学习的计算机系统知识,在Linux系统下模拟hello.c程序P2P(From Program To Process)的过程。介绍了程序从最开始的预处理、编译、汇编、链接到形成目标文件,还包括进程管理、存储管理及IO设备的管理。通过重温一个c程序的一生来加深系统运行程序的理解。
2020-01-05 21:53:19
318
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人