函数从意义上应该是一个独立的功能模块 函数名要在一定程度上反映函数的功能 函数参数名要能够体现参数的意义 尽量避免在函数中使用全局变量 当函数参数不应该在函数体内部被修改时,应该加上const声明 如果参数是指针,且仅当做输入参数时,则应该加上const声明 void str_copy(char*s ...
分类:
其他好文 时间:
2020-01-10 20:29:55
阅读次数:
98
堆内存:在JVM开启的时候就会被创建存放对象实例,几乎所有的对象实例都在这里分配内存存放由new创建的对象和数组,即动态申请的内存都存放在堆内存 栈内存: 栈内存是用来存放在函数中定义的一些基本类型的变量和对象的引用变量例子:局部变量存放在栈;函数调用参数,函数返回值,函数返回地址存放在栈 方法区: ...
分类:
其他好文 时间:
2020-01-08 14:39:18
阅读次数:
80
在类中的位置不同成员变量:成员位置---在类中,方法外定义的变量局部变量:在方法定义中,或者方法声明上的变量在内存中的位置也不同成员变量:在堆内存中局部变量:在栈内存中生命周期不同成员变量:随着对象的创建而存在,随着对象的回收而消失局部变量:随着方法调用而存在,随着方法的调用完毕而消失初始化不同成员变量:跟对象相关的,描述一个对象的属性(成员变量存在一个系统默认初始化),当然也可以直接赋值局部变量
分类:
编程语言 时间:
2020-01-04 01:18:53
阅读次数:
81
Students=newStudent();1.加载Student.class文件进内存2.在栈内存为s开辟空间3.在堆内存为学生对象开辟空间4.对学生对象的成员变量进行默认初始化5.对学生对象的成员变量进行显示初始化6.通过构造方法对学生对象的成员变量赋值7.学生对象初始化完毕,把对象地址赋值给s变量
分类:
编程语言 时间:
2020-01-04 01:02:49
阅读次数:
124
基本类型-栈内存 保存基本类型的变量保存的是值本身 引用类型-堆内存 保存引用类型的变量保存的并不是对象本身,而是一个指向该对象的引用地址 引用类型判断对象是否相等 function equalObjs(a, b) { for (var p in a) { if (a[p] !== b[p]) re ...
分类:
Web程序 时间:
2020-01-02 22:24:28
阅读次数:
117
开始性能测试前需要了解的内容: 1、项目具体需求。 2、指标:响应时间在多少以内,并发数多少,tps多少,总tps多少,稳定性交易总量多少,事务成功率,交易波动范围,稳定运行时长,资源利用率,测哪些交易,哪些接口,测试哪些场景。 3、环境:生产环境服务器数量,测试环境服务器数量,按照资源配比得出测试 ...
分类:
其他好文 时间:
2019-12-26 21:03:42
阅读次数:
75
前端开发性能优化方案 在JS中尽量减少闭包的使用(原因:闭包会产生不释放的栈内存) A:循环给元素做事件绑定的时候,尽可能的把后期需要的信息(例如索引)存储到元素的自定义属性上,而不是创建闭包存储 B:可以在最外层形成一个闭包,把一些后续需要的公共信息进行存储,而不是每一个方法都创建闭包(例如单例模 ...
分类:
其他好文 时间:
2019-12-25 20:22:07
阅读次数:
79
什么是递归 递归:指在当前方法内调用自己的这种现象。 递归的分类: 递归分为两种,直接递归和间接递归。 直接递归称为方法自身调用自己。 间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。 注意事项: 递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。因为:当一个方法调 ...
分类:
编程语言 时间:
2019-12-20 13:44:41
阅读次数:
85
面向对象是相对面向过程而言面向过程:强调的是功能行为面向对象:将功能封装进对象,强调具备了功能的对象 不论面向对象还是面向过程都是一种开发思想而已。举一个例子来理解面向对象和面向过程把大象装进冰箱分三步 1.打开冰箱 2.存储大象 3.关闭冰箱看到上面的步骤就是面向过程的思想而面向对象思想 1.冰箱 ...
分类:
编程语言 时间:
2019-12-16 15:05:36
阅读次数:
99
public class VariableDifference { String name;//成员变量写在类里,位于堆内存,随着类的消失二消失 public void methoda(){ int num;//局部变量,位于栈内存,随着方法的消失而消失 /*System.out.println(n ...
分类:
其他好文 时间:
2019-12-15 21:46:39
阅读次数:
106