某公司整套笔试题

-、选择题
1.JAVA字节码文件名缀名(B)
A.java
B.class
C.html
D.exe
2.下列哪些不是JAVA的基本数据类型(C)
A.double
B.byte
C.String
D.float
E.int
3.设int型变量x=1,y=2,z=3,则表达式y+=--z/x++的值是(B)
A.1
B.4
C.3
D.5
4.下列那一项的写法是错误的(此题无解)。
A.
public class abc{
	abc(){...}
	abc(int x){...}
}

B.
public class abc{
	abc(){...}
	abc(float x){...}
}

C.
public class abc{
	abc(){...}
	abc(String x){...}
}

D.
public class abc{
	abc(){...}
	int abc(double x){...}
}

5.Math.round(11.5)等于多少?Math.round(-11.5)等于多少?(C)此题我做错了
A.11 -11
B.11 12
C.12 -11
D.12 12
6.下列关于字符串的使用中,错误的是哪一项(C)。
A.String string  = new String("string");
B.String string = "String"+100;
C.String string = 100;
D.String string = null;
7.
public class abc{
	
	public static void main(String[] args) {
		int i = 0;
		System.out.println(sum(i));
	}
	
	public static int sum(int i){
		i++;
		if(i<100)
			return sum(i);
		return i;
	}
}

请选择上面的程序代码输出的结果(C)。
A.0
B.1
C.100
D.101
8.对int a[] = { 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 }数组使用冒泡方法进行从大到小排序需要多少次交换(此题无解,我用程序看是45)
A.1
B.10
C.100
D.54
9.
public class abc {
	public static void main(String[] args) {
		int i,s=0;
		int a[] = {10,20,30,40,50,60,70,80,90};
		for(i = 0;i<a.length;i++)
			if(a[i]%3==0) s+=a[i];
		System.out.println("s="+s);
	}
}

请选择上面的程序代码输出的结果:(D)。
A.30
B.60
C.90
D.180
10.在SQL SERVER数据库上,下列那一项的写法有错误(C)。
A.CREATE TABLE A(ID FLOAT,NAME VARCHAR(10))
B.CREATE TABLE A(ID INT,NAME CHAR(10))
C.CREATE TABLE A(ID INT,NAME VACHAR2(10))
D.CREATE TABLE A(ID FLOAT,NAME CHAR(10))

二.问答题(自己发挥吧,我去百度复制过来,但是我做时没有)
1.请描述一下final、finally、finalize三者之间的区别?(前两个简单的回答了)
2.请描述一下地址传递和值传递的区别?(还好吧)
3.请描述一下\d,\d{3},\d(3,5)的含义?(提示正则表达式,没写)
4.请描述一下在广域网环境中如何防止用户SQL注入?
5.名称   产地   进价
  苹果   烟台   2.5
  苹果   云南   1.5
  苹果   四川   3
  西瓜   江西   1.5
  西瓜   北京   2.4
....
请给出sql语句,查询出每种商品低于平均进价的行
select * from yougou left join (select name avgname,AVG(price) avgprice from yougou GROUP BY name) b on yougou.name = b.`avgname`
where price < b.avgprice
6.请问String s = new String("x")创建了几个Stirng Object?都是什么?
7.请描述一下JSP,HTML以及servlet三者之间的区别?
8.请列举一下常用的的JAVA应用服务器,并且说明一下各自的优缺点?
三、编程题
1.请编写一个单例模式的例子出来?
2.有一个四位数,并且是一个数的平方,前两个数是相同的,后两个数相同,请设计算法求出这个数?
设该四位数为1000a+100a+10b+b,则
1000a+100a+10b+b=1100a+11b =11(100a+b)
故1,又因为(a+b)≤18
所以a+b=11,
带入上式得 四位数=11×(a×100+(11-a)) =11×(a×99+11) =11×11×(9a+1)
故9a+1必须为完全平方数.由a=2、3、4、5、6、7、8、9验证得,9a+1=19、28、27、46、55、64、73.所以只有a=7一个解;此时b=4.因此四位数是7744=112×82=88×88.

3.请编写一个用户注册、登录功能(包括数据库表的创建)?要求使用以下技术JSP或HTML Struts/servlet JS  JDBC.

你可能感兴趣的:(java,面试)