1.inline内联函数 在C语言中,如果一些函数被频繁调用,不断地有函数入栈,即函数栈,会造成栈空间或栈内存的大量消耗。 为了解决这个问题,特别的引入了inline修饰符,表示为内联函数。 在使用循环里面调用某个函数时,可以使用内联函数。 其实这种有点类似咱们前面学习的动态库和静态库的问题,使调用 ...
分类:
系统相关 时间:
2019-08-16 18:42:19
阅读次数:
113
Java语言特点:一次编写,到处运行 面向对象:封装性、继承性、多态性 可变参数 foreach 类中全部属性必须封装,封装后要通过get,set方法进行访问;调用方法时最好采用this.方法名称();的形式 字符串:(“==”比较的是地址)(equals比较内容) Java中为String对象提供 ...
分类:
编程语言 时间:
2019-08-15 05:57:58
阅读次数:
113
C++程序中内存分为两个部分 栈:在函数内部声明的所有变量都将占用栈内存。 堆:这是程序中未使用的内存,在程序中可用于动态分配内存。 在很多时候,我们无法提前预知需要多少内存来存储某个变量的特定信息,所需内存的大小需要在运行时才能确定。 在C++中,可以使用特殊的运算符为给定类型的变量在运行时分配堆 ...
分类:
编程语言 时间:
2019-08-14 18:41:44
阅读次数:
102
想起之前面试的一道题,equals和==有什么不同。只记得当时的回答完全糊了。。学习一下。 在说明equals和==的区别前,先简单了解一下JVM中内存分配知识: JVM中,内存分为:栈内存,堆内存。 二者的区别是: 当我们创建一个对象(new Object)时,就会调用对象的构造函数来开辟空间,将 ...
分类:
其他好文 时间:
2019-08-13 13:21:28
阅读次数:
81
1.内存结构 Java程序在运行时,需要在内存中的分配空间为提高运算效率,空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。 栈内存 ·用于存储局部变量,当数据使用完,所占空间会自动释放, 堆内存 ·数组和对象,通过Bw建立的实例都存放在堆内存中, ·每一个实体都有内存地 ...
分类:
编程语言 时间:
2019-08-11 10:51:02
阅读次数:
73
A:在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 B:在内存中的位置不同 成员变量:在堆内存(成员变量属于对象,对象进堆内存) 局部变量:在栈内存(局部变量属于方法,方法进栈内存) C:生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随 ...
分类:
其他好文 时间:
2019-08-04 21:11:28
阅读次数:
140
这是一个比较java经典的问题,面试的时的出场率非常高,尤其是对于初级程序员来说,这些都是比较比较重要的,相对他们了解的透彻,需要对栈内存和堆内存的区别。 Java堆内存 堆内存在Java运行时被使用来为对象和JRE类分配内存。不论什么时候我们创建了对象,它将一直会在堆内存上创建。垃圾回收运行在堆内 ...
分类:
其他好文 时间:
2019-08-04 13:49:19
阅读次数:
114
v面向对象 什么是面向对象和面向过程呢 简单的说 面向对象就是我们面对的是对象,如果我们想要完成一系列的事情的话,我们可以制作一个小程序来帮我们做,这个就叫做是面向对象思想,而面向过程思想就是当我想要去做一系列事情的时候我们想的是如何做这些事情 先做什么后座什么 怎么做,这就是叫做面向过程思想。面向 ...
分类:
编程语言 时间:
2019-08-02 14:46:34
阅读次数:
90
1 变量的提升 当浏览器开辟出提供代码执行后的栈内存后,代码并没自上而下的立即开始执行,而是继续做了一些事情 1 把当前作用域中所有带 var / functiong关键字的进行了提前的声明和定义,这称为js的变量提升机制 其中,使用var 声明的z只是提前声明,并没有进行赋值,没有赋值,默认值为 ...
分类:
编程语言 时间:
2019-07-31 21:42:07
阅读次数:
90
主线程 JVM执行main方法,main方法会进入到栈内存。JVM会找操作开辟一条main方法的通向CPU 的执行路径。CPU就可以通过这个路径来执行main方法,而这个路径有一个名字,叫main(主)线程。 如图所示 ...
分类:
编程语言 时间:
2019-07-26 22:52:00
阅读次数:
125