牛客错题2020年9月30日
-
下面有个hibernate延迟加载,说法错误的是?
正确答案: C 你的答案: D (错误)
Hibernate2延迟加载实现:a)实体对象 b)集合(Collection) Hibernate3 提供了属性的延迟加载功能 get支持延迟加载,load不支持延迟加 hibernate使用Java反射机制,而不是字节码增强程序来实现透明性 解释: Hibernate 中 get()和load() 的区别: 1.get()采用立即加载方式,而load()采用 延迟加载 ; get()方法执行的时候,会立即向数据库发出查询语句, 而load()方法返回的是一个***(此***中只有一个id属性),只有等真正使用该对象属性的时候,才会发出 sql语句 2.如果数据库中没有对应的记录,get()方法返回的是null.而load()方法出现异常ObjectNotFoundException
-
typeof Date.now() 的值是:
正确答案: C 你的答案: B (错误)
"date" "object" "number" "error" 解释: Date.now() 方法返回自1970年1月1日 00:00:00 UTC到当前时间的毫秒数。
-
以下哪项可能包含菜单条( )
正确答案: B 你的答案: C (错误)
Panel Frame Applet Dialog 解释: Frame是Window的直接子类,一个Frame对象就是一个有标题有边界的顶层窗口; Panel是Container的直接子类,一个Panel对象用来添加组件和其他Panel对象的容器。
-
URL u =new URL("http://www.123.com");。如果www.123.com不存在,则返回______。
正确答案: A 你的答案: D (错误)
http://www.123.com ”” null 抛出异常 解释: 我们在执行URL u =new URL("http://www.123.com");这句话的时候确实要抛出异常,但是这个异常属于IOException,不管网址是否存在,最后都会返回该网址的一个连接,打印出来就是该网址。
-
以下哪种JAVA的变量表达式使得变量a和变量b具有相同的内存引用地址( )
正确答案: A B 你的答案: B D (错误)
String a = "hello"; String b = "hello"; Integer a; Integer b = a; int a = 1; Integer b = new Integer(1); int a = 1; Integer b = 1; 解释: 首先结论: (1)int与Integer、new Integer()进行==比较时,结果永远为true (2)Integer与new Integer()进行==比较时,结果永远为false (3)Integer与Integer进行==比较时,看范围;在大于等于-128小于等于127的范围内为true,在此范围外为false。 下面是解析过程: 1.Integer与int比较时,Integer会有拆箱的过程,我们可以看看拆箱的代码: 直接返回的就是value,因此int与Integer以及new Integer()进行 ==比较时结果都是true。 2.Integer a=n时,如果n大于等于-128小于等于127时,会直接从IntegerCache中取,不在这个范围内,会new一个对象,所以Integer与new Integer进行 ==比较时,结果都是false。 3.Integer与Integer比较,需要看范围,如果在-128~127(包含-128,不包含127)范围内,因为都是从IntegerCache中取值,所以相等;若不在这个范围内,则都要去new一个对象,所以结果为false。 关于D选项,我想单独回答一下: D选项我认为是错误的,a==b结果虽然结果是true,但是要注意的是,这是一个int与Integer的比较,Integer会进行拆箱,拆箱的结果是int型的,这就相当于两个int型之间的比较,而基本数据类型之间的比较,比较的是数值,所以结果是true,但并不表示两者的内存地址相等。个人看法,如有错误,欢迎指出。
-
在大数据量场景下,以下哪种js中字符串连接方式较为高效( )
正确答案: C 你的答案: B C D (错误)
a+=b a = a+b Array.join() Array.push() 解释: +的处理机制是:新建一个临时字符串,将新字符串赋值为a+b,然后返回这个临新字符串并同时销毁原始字符串,所以字符串连接效率较低。所以用Array.join()不会新建临时字符串效率更高。 (当然以上效率问题仅存在于低版本浏览器ie7-及以下,现在的新浏览器基本上都解决了这个问题,效率差不多) 所以在面试时遇到这种题时告诉面试官分两种情况: 旧浏览器(ie7-)下用join()会高效,而新版本浏览器下除了做变量缓存外不需要做别的优化。这样可以侧面表达对刘拉你兼容有所了解。