• 前段时间都在泡图书馆,看《java核心技术卷1》。感觉好多东西会用了,但是并不知道底层实现原理,还有好多没见过的知识点概念。觉得果然还是要多读书。
    接下来准备边读书,边把各种面试题提及的知识点好好学一下,然后再设计一个小项目,继续敲代码,以后就把每天的学习笔记写下来,以后需要的时候也可以自己来找找,还可以加深印象。

  • Q:为什么要看面试题?
    A:我发现好多面试题其实都是平时应用较多的概念,从一个小概念出发,然后可以拉扯延伸出来好多知识,把这些都学会了,应用上会更加得心应手。

注:问题答案仅供参考,而且答案只写我能了解的,能看懂的(有些地方逻辑可能不够清晰,还请谅解)摘抄参考的原文会标注出网址。如有侵权,联系删改。

-目标:
https://github.com/tangyouhua/program-resource/blob/master/program-interview/java-baidu-200.md

操作系统中 heap 和 stack 的区别**

http://blog.csdn.net/u014306011/article/details/51044091
  堆栈是两种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。在单片机应用中,堆栈是个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场。要点:堆,队列优先,先进先出(FIFO—first in first out)。栈,先进后出(FILO—First-In/Last-Out)。
二、堆栈缓存方式区别:
  1、栈使用的是一级缓存
  2、堆是存放在二级缓存中
Java中栈和堆的区别:
在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。
  堆内存用来存放由new创建的对象和数组,在堆中分配的内存,由Java虚拟机的自动垃圾回收器来管理。在堆中产生了一个数组或对象后,还可以在栈中定义一个特殊的变量,让栈中这个变量的取值等于数组或对象在堆内存中的首地址,栈中的这个变量就成了数组或对象的引用变量。引用变量就相当于是为数组或对象起的一个名称,以后就可以在程序中使用栈中的引用变量来访问堆中的数组或对象。

什么是基于注解的切面实现 @Aspect @AspectJ(切面)

切面学的实在是不怎么样,看了好多参考,还是看不懂,等以后学会了再回来补

什么是 对象/关系 映射集成模块 Object Relational Mapping,简称ORM

对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。
Spring 通过提供ORM模块,支持我们在直接JDBC之上使用一个对象/关系映射映射(ORM)工具,Spring 支持集成主流的ORM框 架,如Hiberate,JDO和 iBATIS SQL Maps。Spring的事务管理同样支持以上所有ORM框架及JDBC。

什么是 Java 的反射机制

反射是一种计算机处理方式。有程序可以访问、检测和修改它本身状态或行为的这种能力。能提供封装程序集、类型的对象。(程序集包含模块,而模块包含类型,类型又包含成员。)
优缺点:
优点:
1、反射提高了程序的灵活性和扩展性。
2、降低耦合性,提高自适应能力。
3、它允许程序创建和控制任何类的对象,无需提前硬编码目标类。
缺点:
1、性能问题:使用反射基本上是一种解释操作,用于字段和方法接入时要远慢于直接代码。因此反射机制主要应用在对灵活性和拓展性要求很高的系统框架上,普通程序不建议使用。
  
2、使用反射会模糊程序内部逻辑;程序员希望在源代码中看到程序的逻辑,反射却绕过了源代码的技术,因而会带来维护的问题,反射代码比相应的直接代码更复杂。

什么是 ACID

数据库事务transanction正确执行的四个基本要素。
ACID,原子性(Atomicity)、一致性(Correspondence)、隔离性(Isolation)、持久性(Durability)。

原子性:整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。
原子性是指事务是一个不可再分割的工作单位,事务中的操作要么都发生,要么都不发生。

一致性:在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。

隔离性:隔离状态执行事务,使它们好像是系统在给定时间内执行的唯一操作。如果有两个事务,运行在相同的时间内,执行 相同的功能,事务的隔离性将确保每一事务在系统中认为只有该事务在使用系统。这种属性有时称为串行化,为了防止事务操作间的混淆,必须串行化或序列化请 求,使得在同一时间仅有一个请求用于同一数据。
多个事务并发访问时,事务之间是隔离的,一个事务不应该影响其它事务运行效果。

持久性:在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。

BS与CS的联系与区别

http://blog.csdn.net/hengbao4/article/details/52505427

Cookie 和 Session的区别

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
考虑到安全应当使用session。
3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
考虑到减轻服务器性能方面,应当使用COOKIE。
4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
5、所以个人建议:
将登陆信息等重要信息存放为SESSION
其他信息如果需要保留,可以放在COOKIE中

fail-fast 与 fail-safe 机制有什么区别

http://blog.csdn.net/ch717828/article/details/46892051

get 和 post请求的区别

百度随便一搜,有很多关于这个问题的文章,我看了大多数之后,觉得这篇写的很不错(仅代表个人观点)
http://www.techweb.com.cn/network/system/2016-10-11/2407736.shtml

Interface 与 abstract 类的区别

1.相同点
A. 两者都是抽象类,都不能实例化。
B. interface实现类及abstrctclass的子类都必须要实现已经声明的抽象方法。
2. 不同点
A. interface需要实现,要用implements,而abstract class需要继承,要用extends。
B. 一个类可以实现多个interface,但一个类只能继承一个abstract class。
C. interface强调特定功能的实现,而abstractclass强调所属关系。
D. 尽管interface实现类及abstrct class的子类都必须要实现相应的抽象方法,但实现的形式不同。interface中的每一个方法都是抽象方法,都只是声明的(declaration,没有方法体),实现类必须要实现。而abstractclass的子类可以有选择地实现。

2017年12月6日

2017年12月6日 学习笔记(JAVA面试题)相关推荐

  1. 2017年11月23日学习笔记_用python解决杨辉三角函数,以及理解

    今天学习了廖雪峰老师的python教程,学到杨辉三角函数的时候很迷茫, 他的基本格式如下: [1],[1, 1],[1, 2, 1],[1, 3, 3, 1],[1, 4, 6, 4, 1],[1, ...

  2. 实战 | 深度学习轻松学:如何用可视化界面来部署深度学习模型 转载 2017年12月27日 00:00:00 109 翻译 | AI科技大本营 参与 | 王赫 上个月,我有幸结识了 DeepCogn

    实战 | 深度学习轻松学:如何用可视化界面来部署深度学习模型 转载 2017年12月27日 00:00:00 标签: 109 编辑 删除 翻译 | AI科技大本营 参与 | 王赫 上个月,我有幸结识了 ...

  3. 京东发力金融AI,欲再招50位金融AI顶级科学家 转载 2017年12月04日 00:00:00 42 12月1日,京东金融AI实验室在美国硅谷正式投入运营。亦在同一天,京东金融宣布,美国伊利诺伊大

    京东发力金融AI,欲再招50位金融AI顶级科学家 转载 2017年12月04日 00:00:00 42 12月1日,京东金融AI实验室在美国硅谷正式投入运营.亦在同一天,京东金融宣布,美国伊利诺伊大学 ...

  4. 2017年度盘点:15个最流行的GitHub机器学习项目 By 机器之心2017年12月21日 15:23 在本文中,作者列出了 2017 年 GitHub 平台上最为热门的知识库,囊括了数据科学、机

    2017年度盘点:15个最流行的GitHub机器学习项目 By 机器之心2017年12月21日 15:23 在本文中,作者列出了 2017 年 GitHub 平台上最为热门的知识库,囊括了数据科学.机 ...

  5. 2017广东全国计算机12月,2018年广东考研时间:2017年12月23日至24日

    2018年考研时间已经公布,出国留学考研网为大家提供2018年广东考研时间:2017年12月23日至24日,更多考研资讯请关注我们网站的更新! 2018年广东考研时间:2017年12月23日至24日 ...

  6. 优化Docker镜像大小方案 2017年12月10日 17:54:46 阅读数:1774 标

    2019独角兽企业重金招聘Python工程师标准>>> 优化Docker镜像大小方案 2017年12月10日 17:54:46 阅读数:1774 标签: Docker 更多 个人分类 ...

  7. 手游问道服务器维护到几点,问道手游2017年12月14日更新什么内容?维护到几点开机?...

    问道手游2017年12月14日更新什么内容?维护到几点开机? 各位亲爱的道友: 为保证服务器的运行稳定和服务质量,<问道>手游所有公测服务器(内测专区除外)将于2017年12月14日04: ...

  8. 梦想世界 2014年8月14日服务器维护公告,2017年12月14日更新公告

    2017年12月14日更新公告 发布时间:2017-12-14 [新增内容] 1.冰火大作战:每周六下午15:00-16:00,变身两大阵营的战士,在地图场景上用技能进行对抗,提前在花好月圆服务器开放 ...

  9. 12月26日学习记录

    今天把好久没登录的刷题网站重新上去了一遍写一一点点简单的代码,发现很多东西都已经忘掉了,现在把写过的题目都记录下来,留作笔记. 题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符. 例如 ...

最新文章

  1. 【c语言】蓝桥杯算法提高 c++_ch02_04
  2. LInux在线安装JDK
  3. SD-SD用到的文本对象列表
  4. 【大数据技术】操作系统和Hadoop版本选择
  5. easypoi 导入失败返回错误文件_从Excel批量导入数据说到ForkJoin的原理
  6. 智能会议系统(2)---Android 2.3 APIs SIP-based VoIP
  7. 设计模式(八)组合模式 Composite
  8. 还在问跨域?本文记录js跨域的多种实现实例
  9. oracle数据库sql查询,oracle数据库中常用经典SQL查询
  10. 绿盾无法修改服务器地址,天锐绿盾V5.50.170626最新版修改说明
  11. 谷歌云盘超大文件快速下载方法
  12. 系统服务图形化安装卸载工具SRVINSTW汉化版
  13. 模拟电子线路复习笔记( 六) —— 集成运算放大器原理及其运用
  14. 中控考勤机Java二次开发(附Demo)
  15. 网页提示https“证书错误:导航已阻止”,无法跳转解决办法
  16. 程序员有趣的面试智力题
  17. performing vcs refresh卡住不动解决方法
  18. IOS APP资源网站汇总
  19. VOS3000软交换怎么样,云服务器可以配置吗?
  20. Linux基础命令与知识点

热门文章

  1. 面试系列之五,ccb行
  2. 百度搜索留痕推广资源整理如何收录排名的?
  3. XML中的CDATA(字符数据)
  4. ppt插入带圆圈的数字
  5. 渗透测试基础,初识渗透测试
  6. MongoDB副本集搭建、连接php
  7. sp工具中最疼的是_阴阳师:永生之海完结,终于该八雷山了吧?建御雷、SP山风预定...
  8. spoon mysql驱动包下载_spoon(kettle)基本配置(连接Mysql和Oracle)
  9. 60级怀旧服奥妮克希亚巢穴猎人怎么玩?
  10. Foxit多个高危漏洞通告