我是靠谱客的博主 爱撒娇小甜瓜,最近开发中收集的这篇文章主要介绍java 初中级笔试题,java 初中级程序员笔试题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1、面向对象的特征有哪些方面?

答:抽象:

抽象就是忽略当前主题中与目标无关的那些方面,比便充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用注意细节。

继承:

继承允许和鼓励类的重用,提供了一种明确表述共性的方法。对象的一个新类可以从现有类中派生,这个过程成为继承。新类继承了原始类的特性,新类成为院士类的派生类(子类),而原始类成为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。

封装:

封装过程和实现细节,对数据和方法的访问只能通过程序提供的公有方法和字段进行访问。

多态性:

允许不同类的对象对同一消息作出响应。多态具有灵活、抽象、行为共享、代码共享的优势。

2、String和StringBuffer的区别?

答:它们都是操作字符串的,但是String是final类,字符串的值不会改变。而StringBuffer类提供的字符串可以修改。

3、同步和异步有什么区别?在什么情况下使用?

答:如果数据将在线程间共享。例如正在写的数据以后可能被另一个线程读到,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据,必须进行同步存取。

当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。

2341dc0e9b77c4960778e3b5496e8a6a.png

4、gc是什么?为什么要有gc?

答:GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一:

System.gc()

Runtime.getRuntime().gc()

5、Math.round(11.5)等于多少?Math.round(-11.5)等于多少?

答:12   -11

6、absract的mathod是否可以同时是static,是否可以同时是native,是否可以同时是synchronized?

答:都不能

注:absract应该为abstract

7、线程的基本概念、基本状态及状态之间的关系?

答:线程指在程序执行过程中,能够执行程序代码的一个执行单位,每个程序至少都有一个线程,也就是程序本身。

Java中的线程有四种状态分别是:运行、就绪、挂起、结束

8、mvc的各个部分都有哪些技术实现?如何实现?

答: M model业务逻辑(javaBean ,EJB组件)

V view 表示层(jsp页面)

C controller 控制层 (servlet)

视图层接受用户的输入和请求等,然后请求到达Servlet的控制器后,转发到相应的业务逻辑,业务逻辑运算完成后,再将数据呈现给相应表现层view

683d5ecb94f54c6870ef4741179d830d.png

9、xml文档定义有几种形式?之间的区别?解析xml文档有哪几种方式?

答:两种形式 dtd  schema,

本质区别:schema本身是xml的,可以被XML解析器解析(这也是从DTD上发展schema的根本目的),

有DOM,SAX,STAX等

DOM:处理大型文件时其性能下降的非常厉害。这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML的随机访问

SAX:不现于DOM,SAX是事件驱动型的XML解析方式。它顺序读取XML文件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML的顺序访问

STAX:Streaming API for XML (StAX)

10、servlet的生命周期?

答:Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。

11、描述一下jvm加载class文件的原理机制?

答:JVM中类的装载是由ClassLoader和它的子类来实现的,Java ClassLoader 是一个重要的Java运行时系统组件。它负责在运行时查找和装入类文件的类。

12.Spring最有用的功能是什么?举例说明IOC和AOP的作用。

答:IOC依赖注入。

IOC通过容器而不是直接将java对象间的关系注入应用程序中,可以应用程序就实现了解耦,分层。

AOP 面向切面编程,简单地说,就是将那些与业务无关,却为业务模块所共同调用的逻辑或责任,例如事务处理、日志管理、权限控制等,封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可操作性和可维护性。

13、sql语句性能调优的方法有哪些?

答:1、合理使用索引

2、用exists/not exists代替in/not in操作

3、尽量用联表查询不用子查询

4、用存储过程往往更有效率

14、假设有如下表:

TABLE: testID

A

B

1

4

2

2

1

2

3

1

3

4

3

2

5

1

5

6

1

2

7

4

-1

8

1

2

写一条SQL语句,选择所有a=1或b=2的记录,使得a=1且b=2的记录排在最前面,并且a=1且b=2的记录按id降序排列。

答:select * from (select * from test where a = 1 and b =2 order by id desc )

union select * from (select * from test where id not in (select id from test where a = 1 and b =2)) t

where t.a = 1 or t.b =2

最后

以上就是爱撒娇小甜瓜为你收集整理的java 初中级笔试题,java 初中级程序员笔试题的全部内容,希望文章能够帮你解决java 初中级笔试题,java 初中级程序员笔试题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部