公司java训练营中级题_第1页
公司java训练营中级题_第2页
公司java训练营中级题_第3页
公司java训练营中级题_第4页
公司java训练营中级题_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、单选题以下关于反射的说法中,哪一项是错误的?class.forName()和classLoader都可用来对类进行加载classloader是将.class文件加载到JVM中,不会执行static中的内容class.forName得到的class是已经初始化完成的,classloder得到的class是还没有 链接的class.forName的所有重载方法无论任何情况下都会加载static块单选题以下关于Map的说法中,哪一项是正确的?HashMap遍历时,取得数据的顺序和插入顺序一致,不允许key为null,允许value为 nullLinkedHashMap默认的遍历顺序是按照元素的插入顺

2、序,也可以通过accessOrder来 改变遍历顺序为访问顺序Hashtable是HashMap的线程安全版,它支持线程的同步,即任一时刻只有一个线程 能写Hashtable,它允许记录的键或者值为nullTreeMap实现SortMap接口,能够把它保存的记录根据键排序,默认是按键值的降序排 序单选题关于SQL语句的优化,以下哪一项说法是错误的?类似分页功能的SQL,建议先用主键关联,然后返回结果集,效率会高很多通常情况下,join的性能比较差,建议改造成子查询写法多表联接查询时,关联字段类型尽量一致,并且都要有索引尽可能不使用TEXT/BL0B类型,确实需要的话,建议拆分到子表中,不要和主

3、表放在一起, 避免SELECT*的时候读取数据性能太差单选题 binlog是属于MySQL Server层面的,又称为归档日志,属于逻辑日志,是以二进制的形 式记录这个语句的原始逻辑undo log保存了事务发生之前数据的一个版本,可以用于回滚,同时可以提供多版本并发 控制下的读(MVCC),即非锁定读MySQL的binlog的statement模式不需要记录每一行数据的变化,减少了 binlog日志 量,节省了 I/O以及存储资源,所以在任何条件下都可以放心使用单选题若你想要查询笛卡尔积,以下几个SQL命令中,哪一项是正确的?SELECT * FROM player, teamSELECT

4、player_id, player . team_id, playr_nam,height, team_name FROM player, team WHERE player.team id = team.team idC.SELECT p.player_name, p.height, h.height_levelFROM player AS p, height_grades AS hWHERE p.height BETWEEN h.height_lowest AND hhight_highstD.SELECT * FROM player LEFT JOIN team on player.te

5、am_id = team.team_id单选题这是一段考查位运算的测试代码,以下执行结果中哪一项是正确的?public class MarkTest public static void main(String L J args) int x = 1;int y = x;System.out.printin(y);)1-2D.-1单选题小刘准备执行如下代码:public class StackOverflowErrorDemo public static void main(String args) javaKeeper();)private static void j avaKeeper()

6、 javaKpr();)执行后他发现代码抛出异常,以下异常中,哪一项是该代码抛出的?java.lang.OutOfMemoryError: Java heap spacejava.lang.OutOfMemoryError: unable to create nw native threadj ava.lang.OutOfMemoryError: Out of swap spacej ava ,lang.StackOverflowError单选题关于下面这段代码,以下哪一项的执行结果是正确的?public class IntegerTest public static void main(St

7、ring args) Integer a = 10;Integer b = 10;Integer c = 129;Integer d = 129;System.out.printIn(a = b);System.out.printIn(c = d);A.true trueB.false falseC.true falseD.false true单选题下面关于Java单元测试的说法,哪一项是错误的?JUnit的Test依附在public void方法,可以作为一个测试案例JUnit的Before依附的方法全局只会执行一次,而且是第一个运行JUnit的After依附的方法在测试方法运行之后运行采用

8、Mockito框架虚拟出一个单元测试的外部依赖,通过只注重测试代码的流程与结果, 真正地实现测试目的单选题关于Spring事务,以下哪个说法是错误的?private方法是不会被Spring代理的,因此是不会有事务产生的当前类调用的内部调用。在内部被调用方法上加Transactional (rollbackFor二Exception, class),这个是不生效的事务方法异常被catch住,事务不生效在调用方法上添加Transactional,但是方法抛出了 lOException,事务会回滚单选题在异常处理中,如释放资源,关闭数据库、关闭文件,应由以下哪一项语句完成?try子句catch子句C

9、.finally 子句D.throw子句单选题在Linux系统下,我们在查看内存使用情况时,经常会使用到free命令,其中我们经常 观察buffer/cache的值,关于其代表的含义,以下哪一项是正确的?buff/cache = Buffers + Cachedbuff/cache = Buffers + Cached + SReclaimablebuff/cache = total - used - freebuff/cache = total - used - available单选题以下函数中,哪一项不是聚集函数?A.countmaxsumD.having单选题如下是一段SELECT语句

10、:SELECT aa,bb FROM cc WHERE dd GROUP BY ee;以下该语句执行顺序中,哪一项是正确的?A.FROM WHERE GROUP BY SELECTB.WHERE FROM GROUP BY SELECTc.SELECT FROM WHERE GROUP BYFROM WHERE SELECT GROUP BY单选题如下是一段线程的运行代码,以下输出的结果中,哪一项是正确的?public class Counter public volatile static int volatileCount = 0; static AtomicInteger atomicC

11、ount=new Atomiclnteger();public static void inc () try Thread.sleep (5); catch (InterruptedException e) )volatileCount+;atomicCount.incrementAndGet();)public static void main (String args) throws InterruptedException (final CourttDownLatch latch = new CountDownLatch(1000);/同时启动1000个线程,去进行i + +计算,看看实

12、际结果for (int i = 0; i 680K (54784K) 2908K-688K(180736K), 0.0314018 secs Times: user=0.00 sys=0.00, real=0.07 secsFull GC (System.gc() PSYoungGen: 680K-0K(54784K) ParOldGen: 8K-530K (125952K) 688K-530K(180736K), Metaspace:2656K-2656K(1056768K)r 0.0115257 secs Times: user=0.03 sys=0.00, real=0.01 secs以

13、下关于这段日志的说法中,哪一项是错误的?GC日志开头的GC和Full GC说明了这次垃圾收集的类型PSYoungGen和ParOldGen是指GC发生的区域,分别代表使用Parallel Scavenge垃 圾收集器的新生代和使用Parallel old垃圾收集器的老生代PSYoungGen后面的2908K-680K(54784K)代表的是GC前Java堆已使用容量-GC后 Java堆已使用容量(Java堆总容量)0. 0314018 secs代表该内存区域GC所占用的时间,单位是秒单选题如果你想要修改内核参数,让Linux支持更大的接收窗口,提高网络性能,可以修改以下 哪个参数?net .

14、ipv4.tcp_window_scalingnet . ipv4.tcp_fastopennet . ipv4.tcpkeepalivetimenet . ipv4.tcp_slow_start_after_idle单选题如下是一段Java代码,以下输出的结果中,哪一项是正确的?public class StringTest public static void main(String t args) String si=Hello;String s2=Hello”;String s3=Hei + nlon;String s4=nHeln + newString (nlon);String

15、s5 = new String (Hello);String s6 = s5,intrn();String s7 = nHn;String s8 = nellon;String s9 = s7 + s8;Systm.out.printin(si = s2);System.out.printIn(si = s3);System.out.printIn(si = s4);System.out.printIn(si = s9);System.out.printIn(s4 = s5);System.out.printIn(si = s6);)A.true false false false false

16、 falseB. 在海量用户的应用开发和运维工作中,发现某个服务器经常出现内存不足的报警,经分析服 务器为频繁10操作并有大量内存是缓存,于是某系统管理员采取了两项措施缓解内存不足: 措施一:建立一个新的swap分区,并开启swap措施二:每隔 5 分钟,定时运行 echo 3 /proc/sys/vm/drop_caches这两项措施明显改善了服务器内存的高水位,那么从长期运行的角度来看,这两种做法是否 对用户体验也起到了优化作用?起到了长期优化作用,通过降低内存占用率,让用户可以使用更多的内存空间使用swap起到了长期优化作用,因为将内存交互到磁盘后,可以使用更多的内存,但echo3 /p

17、roc/sys/vm/drop_caches没能够有效释放内存使用swap不能起到优化作用,因为要进行swap in操作会带来更高的10负载。echo 3 /proc/sys/vm/drop_caches起到了优化作用,释放了内存中长期不被使用的文件缓存swap短期内能缓解内存不足,但是长期来看,换入换出时易导致10性能抖动,echo 3 /proc/sys/vm/drop_caches临时释放内存可以在系统自动释放前,更早的人为介入匿名内 存的释放工作,但是经常手动执行,只会让进程访问缓存失效,更频繁的访问磁盘会导致用 户体验下降单选题为了定位某台服务器可用内存突然增大,是操作系统主动释放了

18、内存(例如:内存紧张、00M 等原因)还是人为使用 echo控制选项/proc/sys/vm/drop_caches 释放了内存问题,你可以观察至U /proc/vmstat文件的变化,然后执行以下命令:$ grep drop /proc/vmstatdrop_pagecache 二drop_slab 2你发现该文件的两个选项 drop_pagecache 、 drop_slab 对应的值不是0。以下通过这两个内存事件的关键参数得到的结论中,哪一项是正确的?有用户刚刚执行过 echo 1 /proc/sys/vm/drop_caches有用户刚刚执行过 echo 3 /proc/sys/vm/

19、drop_cachesC.true truefalse false false falsetrue true false false falsetruetrue truefalse true falsetrue单选题由于业务延迟较大,为了优化业务性能,所以手动增大了 TCP发送缓冲区的最大值内核参 数,但是优化以后发现TCP发送缓冲区的最大值没有生效,以下原因中,哪一项是最有可 能的?net. ipv4 . tcp_wmem 和 net. ipv4 . tcp_mem 需要同时调整才能生效net. ipv4.tcp_wmem 由操作系统动态调整,开发者必须在应用程序手动设置最大和最小发送缓存n

20、et. ipv4 . tcp_wmem 的 max 超过了 nt cor wmm_max , 系统以 net. core . wmem_max 值作为TCP发送缓冲区最大值net. core . wmem_max 的值设置过大,超过了系统的内存,导致其设置项不生效单选题为了研究某一程序是否会存在内存泄露,使用了 strace来分析该命令的执行过程,结果如 下:$ strace cat /etc/passwdxcv(/usr/bin/cat, catn, n/etc/passwdn , 0 x7f fdf fdacl28 /* 24 vars */) = 0brk(NULL)= 0 x555dd

21、7706000 mmap(NULL, 40915, PROT_READZ MAP_PRIVATE, 3, 0) = 0 x7f9df16f5000 TOC o 1-5 h z munmap(0 x7f9df16f5000, 40915)= 0brk(0 x555dd7727000)= 0 x555dd7727000 close (2)= 0exit_group (0)= ?+ exited with 0 +通过对该程序的分析可知,以下对该程序使用地址空间描述中,哪一项是不正确的?A.该程序是用了 mmap (2)和munmapd (2),所以在进程虚拟地址空间通过Memory Mapping

22、Region (内存映射区)方式修改了进程的地址空间(address space)B.该程序是用了 brk(2),所以在进程虚拟地址空间通过heap(堆)方式修改了进程的地址空 间 (address space)C.该程序是用了 brk (2),所以在进程虚拟地址空间通过stack (栈)方式修改了进程的地址空 间 (address space)D.该程序使用了 Paging (分页)来转换虚拟地址为物理地址,实现了应用程序到虚拟地址再 到物理地址的访问多选题在分布式系统的架构下,网络存储技术可以让应用与物理服务器解耦,提升灵活性和可运维 性,以下关于分布式存储技术的描述中,哪些是正确的?A.

23、10密集型的应用不应该考虑使用NFS技术,因为NFS会损失一定10性能分布式系统设计应优先使用对象存储技术(Object Storage),而不是块存储技术(Block Storage),因为对象存储维护成本更低、扩展性更强C.搭建分布式存储系统使用的物理服务器,一般不需要考虑磁盘RAIDD.相比软件分布式存储,商业硬件存储产品可靠性更高,因此在生产环境一般不使用软件分布 式存储多选题在系统设计中,可以通过哪些设计模式降低资源使用率?A.prototypeB.abstract factoryC.singletonD.flyweight多选题以下场景中,哪些会存在索引失效的情况?A.a = 1B

24、.a like , %a *a 1D.a = 1 or b = 2多选题以下关于Java的引用类型的描述,哪些说法是正确的?如果一个对象是强引用,它就会一直存在于内存中如果一个对象只具有软引用,则内存空间足够,垃圾回收器就不会回收它;如果内存空间不 足了,就会回收这些对象的内存在GC时,不论内存是否充足,当发现了只具有弱引用的对象,都会回收它的空间如果一个对象仅持有虚引用,那么它在任何时候都可能被垃圾回收器回收有用户刚刚执行过 echo 2 /proc/sys/vm/drop_cachesD.用户曾经使用过 echo 控制选项 /proc/sys/vm/drop_caches ,但无法根据此事

25、件判断当前内存空间增大,是用户手工执行该指令还是操作系统主动是否内存 造成的单选题Linux内核为了保障高优先级的任务运行,设置了不同的任务调度器,内核会优先从哪个调 度器中选择任务执行?A.CFS调度器B.RT调度器C.Deadline调度器D.FIFO调度器单选题很多时候我们会依赖于SELECT的执行顺序来判断查询是否会返回我们希望的数据,以下 SELECT执行的顺序中,哪一项是正确的?A.FROM WHERE GROUP BY HAVING SELECT 的字段 DISTINCT ORDER BY LIMITB.SELECT 的字段 FROM WHERE GROUP BY HAVINO

26、DISTINCT ORDER BY LIMITC.FROM WHERE SELECT 的字段 GROUP BY HAVINO DISTINCT ORDER BY LIMITD.FROM WHERE HAVING SELECT 的字段GROUP BY DISTINCT ORDER BY LIMIT单选题如下是一段Java代码,以下输出的结果中,哪一项是正确的?public class ExceptionTest public int testExceptionReturn() int i = 1;try (i+;int x = i / 0; catch (Exception e) i + + ;

27、 return i; finally i+;)return i;)public static void main(String args) ExcptionTst xcptionTst = new ExceptionTest();int testReturn3 = exceptionTest.testExceptionReturn();System.out.printin(testReturn3);)1234单选题如下是一段Java代码,以下输出的结果中,哪一项是正确的?public class ParntClass public static String name = 爸爸”; publi

28、c int age = 40;public Parentclass()Sy st m. out .print In (父类构造函数”); )/非静态代码块 (Systm.out.printin (父类 “静态代码块” + “ + age);)/静态代码块 staticSystem. out .printin (父类静态代码块“+ ” + name);)public class ChildrenClass extends Parentclass public static String name = 儿子”; public int age = 15;public ChildrenClass()S

29、ystem. out .printIn (子类构造函数”); )Systm. out .printin (子类非静态代码块+ H” + age);) static Systm. out .println (/类静态代码块 + + name);) public static void main(String J args) new ChildrenClass(); ) ) A.子类静态代码块-儿子 子类非静态代码块-15 子类构造函数 父类静态代码块-爸爸 父类非静态代码块40 父类构造函数 B.父类静态代码块爸爸 父类非静态代码块-40 父类构造函数子类静态代码块- -儿子 子类非静态代码块-

30、15 子类构造函数 C.父类静态代码块-一爸爸子类静态代码块-一儿子 父类非静态代码块40 父类构造函数子类非静态代码块-15 子类构造函数D.父类静态代码块爸爸 子类静态代码块儿子 父类非静态代码块-0 父类构造函数子类非静态代码块0 子类构造函数单选题关于Java程序中访问MySQL出现报错error 1062代表的意思,以下哪一项是正确的?连接数据库失败,没有连接数据库的权限字段值重复,入库失败未定义用户对数据表的访问权限删除数据库文件失败单选题使用以下哪条SQL可以在数据表(heros )中查询出最大生命值最高的英雄名称?idnamehp.maxhpgowthhp-startrole_

31、assistbirthdate10000夏侯惇7350288.83307战士2016-07-1910001钟无艳70002753150坦克10002张飞83413293450辅助 10068百里守约56111853019刺客2017-08-08A.select nam from heros limit ;B.select name from heros order by hp_max desc limit 1;C.select name, hp_max from heros limit 一;D.select name, hp_max from heros order by hp_max lim

32、it ;单选题下面是一段考查类初始化和反射的代码,关于这段代码,以下哪一项输出结果是正确的?public class ChildClass extends Parentclass public int age;private String name;/静态代码块 static System, out .printin ( nChildClass static11);)/构造代码块(System.out.printin(nChildClass block);)/构造函数public ChildClass () System.out.printIn(ChildClass constructor);

33、)/main方法public static void main(String args) System. out . print In ( ChildClass start main*1);try (Class classType =Class.forName(Hcom.example.demo.mianshi.ChildClass, false, ClassLoader.getSystemClassLoader();classType.newlnstance ();Fifields = classTypgtFiIds ();for (Field field : fields) System, out .print (field. getName ()+”,); ) catch (ClassNotFoundException | IllegalAccessException | Ins

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论