济南槐荫区JavaScript培训班哪里有
一章 -内容简介
1.1 发展史
1.2 的特点
1.3 语言和其他语言的比较
1.4 一个 程序
第二章 -基础
2.1 数据类型及变量
2.2 表达式与运算符
2.3 基本语句
第三章 -基础
3.1 条件控制语句
3.2 循环控制语句
3.3 实践练习
第四章 -D0M模型文档对象模型讲解
4.1 函数
4.2 对象
4.3 常用内置对象
4.4 与对象有关的语句
第五章 -事件Js事件
5.1 D0M模型框架
5.2 D0M模型中的节点
5.3 使用D0M
5.4 innerHTML
第六章 事件
6.1 事件流
6.2 事件
6.3 事件对象
第七章-表格与表单
7.1 表格基础
7.2 表单基础
7.3 文本框
第八章 表单验证
8.1 访问表单对象
8.2 访问表单元素
8.3 表单内容验证
第九章 Window对象
9.1 Window对象的属性和方法
9.2 Window对象的几个重要操作
第十章 框架(frame)对象
10.1 框架对象
10.2 框架对象的应用实例
第十一章 jQuery基础
11.1 jquery是什么
11.2 什么是jQuery对象?
11.3 jquery 的”$”
第十二章 jquery 控制页面
1.1 标记的属性
1.2 元素的样式
1.3 页面的元素
第十三章 Jquery制作动画与**
13.1 元素的显示与隐藏
13.2 渐入渐出的变幻
13.3 幻灯片效果
第十四章Jquery UI 插件
简述一下 Java 中创建一个对象的过程?
解析:回答这个问题首先就要清楚类的生命周期
答:下图展示的是类的生命周期流向:
Java中对象的创建就是在堆上分配内存空间的过程,此处说的对象创建仅限于new关键字创建的普通Java对象,不包括数组对象的创建。
大致过程如下:
1.检测类是否被加载:
当虚拟机执行到new时,会先去常量池中查找这个类的符号引用。如果能找到符号引用,说明此类已经被加载到方法区(方法区存储虚拟机已经加载的类的信息),可以继续执行;如果找不到符号引用,就会使用类加载器执行类的加载过程,类加载完成后继续执行。
2.为对象分配内存:
类加载完成以后,虚拟机就开始为对象分配内存,此时所需内存的大小就已经确定了。只需要在堆上分配所需要的内存即可。
具体的分配内存有两种情况:一种情况是内存空间规整,第二种情况是内存空间是不连续的。
对于内存规整的情况相对简单一些,虚拟机只需要在被占用的内存和可用空间之间移动指针即可,这种方式被称为指针碰撞。
对于内存不规整的情况稍微复杂一点,这时候虚拟机需要维护一个列表,来记录哪些内存是可用的。分配内存的时候需要找到一个可用的内存空间,然后在列表上记录下已被分配,这种方式成为空闲列表。
分配内存的时候也需要考虑线程安全问题,有两种解决方案:
一种是采用同步的办法,使用CAS来增加操作的原子性。
另一种是每个线程分配内存都在自己的空间内进行,即是每个线程都在堆中预先分配一小块内存,称为本地线程分配缓冲(TLAB),分配内存的时候再TLAB上分配,互不干扰。
3.为分配的内存空间初始化零值:
对象的内存分配完成后,还需要将对象的内存空间都初始化为零值,这样能增加对象即使没有赋初值,也可以直接使用。
4.对对象进行其他设置:
分配完内存空间,初始化零值之后,虚拟机还需要对对象进行其他必要的设置,设置的地方都在对象头中,包括这个对象所属的类,类的元数据信息,对象的hashcode,GC分代年龄等信息。
5.执行 init 方法:
执行完上面的步骤之后,在虚拟机里这个对象就算创建成功了,但是对于Java程序来说还需要执行init方法才算真正的创建完成,因为这个时候对象只是被初始化零值了,还没有真正的去根据程序中的代码分配初始值,调用了init方法之后,这个对象才真正能使用。
到此为止一个对象就产生了,这就是new关键字创建对象的过程。过程如下:
参考文章:Java创建对象的过程简介
面试官:对象的内存布局是怎样的?
答:对象的内存布局包括三个部分:对象头,实例数据和对齐填充。
1.对象头:对象头包括两部分信息,一部分是存储对象自身的运行时数据,如哈希码,GC分代年龄,锁状态标志,线程持有的锁等等。第二部分是类型指针,即对象指向类元数据的指针。
2.实例数据:就是数据啦
3.对齐填充:不是必然的存在,就是为了对齐的嘛
面试官:对象是如何定位访问的?
答:对象的访问定位有两种:句柄定位和直接指针
句柄定位:Java 堆会画出一块内存来作为句柄池,reference中存储的就是对象的句柄地址,而句柄中包含了对象实例数据与类型数据各自的具体地址信息
直接指针访问:java堆对象的不居中就*须考虑如何放置访问类型数据的相关信息,而reference中存储的直接就是对象地址
比较:使用直接指针就是速度快,使用句柄reference指向稳定的句柄,对象被移动改变的也只是句柄中实例数据的指针,而reference本身并不需要修改。
参考文章:JAVA对象创建的过程
更多培训课程,学习资讯,课程优惠等学校信息,请进入 济南槐荫区IT培训济南天桥区php培训济南历城区java培训 网站详细了解,免费咨询电话:400-998-6158