我遇到的面试题

1.介绍下mina
2.除了HTTP协议,还知道哪些协议吗?
3.你知道哪些设计模式?
4.介绍下你们的项目游戏支撑系统?
5.它主要是怎么去请求游戏那边的数据的?(需要提供接口调用)
(游戏上传)
游戏方写好的webservice,调用他们webservice接口获取数据



第二个:

public class testQuestions {
public static void main(String[] args) {
String a0=new String("abc");
String a="abc";
String b="ab";
String c=b+"c";
String d="abc";
System.out.println("a==c:"+(a==c));//false
System.out.println("a==d:"+(a==d));//true
System.out.println("a.equals(c):"+(a.equals(c)));//true
System.out.println("a0==a:"+(a0==a));//false
StringBuilder sb1=new StringBuilder();
sb1.append(a);
StringBuilder sb=new StringBuilder();
sb.append(b).append("c");
System.out.println("sb1==sb:"+(sb1==sb));//false

}

}

输出的结果是:

a==c:false
a==d:true
a.equals(c):true
a0==a:false
sb1==sb:false



由于String没拼接一个就会创建一个对象,所以拼接之后的和未拼接的比较不相等。





第三题:游戏支撑系统是怎么去进行游戏数据统计的,怎么知道游戏那边怎么操作的

游戏通过http上传json数据到我们的后台,然后加入到队列中,队列支撑5万个,然后进行统计分析

这些比较简单

主要还是通过数据库来操作

我们这边数据量不多


第四道:

js如何取select的值,并输出为一个数组

2014-08-16 16:28匿名  |  分类:JavaScript  |  浏览257次
如:
<select name="test" id=testid>
  <option value="1">test1</option>
  <option value="2">test2</option>
  <option value="3">test3</option>
</select>

输出一个数组(1,2,3)

用getElementsByTagName

<html><head></head>
<body>
<select name="test" id="testid">
  <option value="1">test1</option>
  <option value="2">test2</option>
  <option value="3">test3</option>
</select>
</body>
<script>
var tselect = document.getElementById("testid").getElementsByTagName("option");
var output="";
for(var i=0;i<tselect.length;i++){
	output=output+tselect[i].value+","
}
console.log("("+output.substring(0,output.length-1)+")");
</script>
</html>


第五道题:转发与重定向的区别


forward是在服务器端的跳转,就是客户端一个请求发给服务器,服务器直接将请求相关的参数的信息原封不动的传递到该服务器的其他jsp或servlet去处理,而sendredirect是在客户端的跳转,服务器会返回给客户端一个响应报头和新的URL地址,原来的参数什么的信息如果服务器端没有特别处理就不存在了,浏览器会访问新的URL所指向的servlet或jsp,这可能不是原先服务器上的webservce也有可能是。

第六道题:

public class Father {
public Father() {
System.out.println("father...");
}
}

public class Child extends Father{
public Child() {
System.out.println("Child");
}
public static void main(String[] args) {
Father f=new Father();
Child c=new Child();
}
}


输出的结果是:

father...
father...
Child


第七道题:

servlet与jsp有什么联系区别?

1.jsp经编译后就变成了Servlet.(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类)
2.jsp更擅长表现于页面显示,servlet更擅长于逻辑控制.
3.Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServletRequest对象,HttpServletResponse对象以及HttpServlet对象得到.
Jsp是Servlet的一种简化,使用Jsp只需要完成程序员需要输出到客户端的内容,Jsp中的Java脚本如何镶嵌到一个类中,由Jsp容器完成。而Servlet则是个完整的Java类,这个类的Service方法用于生成对客户端的响应。
 
老师发的答案1:
JSP在本质上就是SERVLET,但是两者的创建方式不一样.Servlet完全是JAVA程序代码构成擅长于流程控制和事务处理而通过Servlet
来生成动态网页;JSP由HTML代码和JSP标签构成,可以方便地编写动态网页
因此在实际应用中采用Servlet来控制业务流程,而采用JSP来生成动态网页.在struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层.
答案2:
JSP是Servlet技术的扩展,本质上就是Servlet的简易方式。JSP编译后是“类servlet”。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。


4.第八道题:
而且这里的变量i的访问修饰符必须是default,因为不能小于类的修饰符(即不能用private ,protected)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值