java练习题

1. Error与Exception的区别

  • Error与Exception类的父类都是throwable类,它们的区别是:
    Exception:
    1. 可以是可被控制(checked)或不可控制(unchecked)
    2. 表示一个由程序员导致的错误
    3. 应该在应用程序级被处理
      Error:
    4. 总是不可控制的(unchecked)
    5. 经常用来用于表示系统错误或底层资源的错误

2. 垃圾回收机制的优点

优点:
- 不需要考虑内存管理
- 可以有效的防止内存泄漏,有效的利用可使用的内存
- 由于有垃圾回收机制,java中的对象不再有”作用域“的概念,只有对象的引用才有“作用域”
原理:
- 垃圾回收期是作为一个单独的低级别的线程运行,在不可知的情况下对内存堆中已死亡的或者长期没有使用的对象回收,但是不能实时的对某一对象或者所有对象进行垃圾回收。
垃圾回收机制:
- 分代复制垃圾回收
- 标记垃圾后手
- 增量垃圾回收

3. final,finally,finallize的区别

  • final 用于声明属性,方法和类,分别表示属性不可改变,方法不可覆盖,类不可继承
  • finally 是异常处理语句结构的一部分,表示总是执行
  • finalize 是Object类中的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,供垃圾收集时的其它资源回收,例如关闭文件等

4. Anonymous Inner Class 是否可以 extends, 是否可以 implements interface?

  • 匿名内部类只能继承或者实现一个类或者接口
  • 匿名内部类在创造的时候直接继承某个类,或者实现某个接口

5. Static Nested Class 与 Inner Class的区别

  • Static Nested Class 是被声明为静态的内部类,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化

6. HashMap and HashTable?

  • HashMap 是线程非同步的 ,线程不安全的
  • HashTable 是线程同步的,线程安全的
  • HashMap 可以接受为null的键(key)和值(value),而Hashtable则不行

7. sleep() and wait()?

  • sleep()方法属于Thread类,wait()方法属于Object类
  • sleep()方法不会释放锁,wait()方法会释放锁
  • sleep()方法会自动唤醒,wait()方法需要调用notify唤醒

8. Overload 与 Override的区别

  • Overload是重载:方法名称不变,其余的都是可以变更的。它的关系是同一个类,同一个方法名,不同的方法参数或返回值
  • Override是重写:方法名称、参数个数,类型,顺序,返回值类型都是必须和父类方法一致的。它的关系是父子关系
  • 它们都是java多态性的不同表现

9. 概述jdk 和 jre 的区别

  • JDK:是java开发工具包,它包含了JRE和其它的工具
  • JRE:是java运行时环境

10. 同步和异步有何异同,在什么情况下分别使用它们?举例说明

  • 同步:发送一个请求,需要等待,然后再发送下一个请求,避免出现死锁
  • 异步:发送一个请求,不需要等待,随时可以再发送下一个请求,可以提高效率
    例子
  • 同步:打电话,需要对待对方接收,才能开始通话
  • 异步:发短信,无需等待对方回复,可以随时发送多条短信

11. foward 和 redirect 的区别

  • foward:转发,1次请求1次响应,地址栏的地址不变
  • redirect:重定向,2次请求2次响应,地址栏的地址变更

12. JSP 和Servlet 有哪些相同点和不同点。它们之间的联系是什么?

  • 相同点:它们本质上都是java类
  • JSP编译后就成了Servlet(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP中的代码,web容器将JSP的代码编译成JVM能够识别的java类)
  • Servlet的应用逻辑实在java文件中,并且完全从表现层中的HTML里分离开来,而JSP的情况是java和HTML可以组合成一个扩展名为.jsp的文件
    联系:JSP是Servlet技术的扩展,本质上是Servlet的简易方式

13. Springmvc我想在拦截的方法里面得到从前台传入的参数,怎么得到

  • 在形参里面声明这个参数以及类型,但必须名字和传过来的参数名一样

14. SpringMvc中当一个方法想AJAX返回特殊对象,譬如Object,List等,需要做什么处理

  • 要加上@ResponseBody

15. 对 java web 中过滤器、拦截器和监听器的理解

  • 监听器listener:就是对象木起到监听的作用,它能监听到request,session,application的初始化和属性的变化
  • 过滤器filter:就是对请求起到过滤的作用,它在监听器之后,作用在servlet之前,对请求进行过滤
  • 拦截器interceptor:就是对请求和返回进行拦截,它作用在servlet的内部

16. 抽象类 和 接口 有什么异同?

相同点

  • 抽象类和接口都不能被实例化,但可以定义抽象类和接口类型的引用
    不同点
  • 接口支持多继承;抽象类不能实现多继承
  • 抽象类中可以定义构造器,可以有抽象方法和具体的方法。而接口中不能定义构造器,接口中的方法全都时抽象方法
  • 抽象类中的成员可以是private、默认、protected 、 public de ,而接口中的成员全都是public的。抽象类中可以定义成员变量,而接口中定义的成员变量实际上都是常量。

17. String str="1"; System.outprintln(str+1);的打印结果时什么?

  • 11;

18. 写出事物的四个隔离级别,和事物的四个特性

- 四个隔离级别
  - Read Uncommitted : (脏读)读未提交,顾名思义,就是一个事务可以读取另一个未提交事务的数据。
  - Read Committed : (不可重复读)  读提交,顾名思义,就是一个事务要等另一个事务提交后才能读取数据。
  - Repeatable Read : (重复读)重复读,就是在开始读取数据(事务开启)时,不再允许修改操作。
  - Serializable : 序列化 ,是最高的事务隔离级别,在该级别下,事务串行化顺序执行,可以避免脏读、不可重复读与幻读。但是这种事务隔离级别效率低下,比较耗数据库性能,一般不使用。

19. detele 与 truncate 的区别

  • Delete 语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事物,记录在日志中保存,可以进行回滚操作。
  • Truncate 是一次性的从表中删除所有的数据,操作不会作为事物记录在日志中,不能回滚。
  • Drop 将所有的控件全部释放掉,删除整个表(结构和数据)

20. 请写出线程安全和不安全的类

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,657评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,662评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,143评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,732评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,837评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,036评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,126评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,868评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,315评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,641评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,773评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,470评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,126评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,859评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,095评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,584评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,676评论 2 351

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,602评论 18 399
  • Java的问答题。 一、 基本 1.一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以...
    joshul阅读 3,633评论 2 5
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,218评论 11 349
  • 01 开车上路要有驾驶证,无证驾驶被称为马路杀手,是要追究法律责任的;有了教师资格证才能去上岗做老师,才能被称之为...
    张瓓阅读 344评论 0 0
  • 昨天上午,我坐在客厅的桌子边,穿着羊毛衫,安静地坐在那边,打开电脑处理事情。 这种感觉很好,一个人在屋子里做自己的...
    旦旦日记阅读 256评论 0 0