Java中级开发工程师笔试试卷

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 154 收藏 0 点赞 0 评论 0

一、写出java处理异常的基本语法格式

try{  }catch(exception e){   }finally{};

二、写出读出相对路径”deppondepponIT.txt”文件的流,在必要的地方做捕获异常的处理

fileInputStream fis;

Public void readTXT(){

Try{

Fis= new FileInputStream(“deppondepponIT.txt”);

}catch(IOException e){

/异常处理

}

}

三、写程序建立map集合,并在map中建立IT部,编辑部,人力资源部与德邦物流的对应关系。并写出判断语句,如果map中包含IT部,则输出字符串“good department”。

答案

Map map= new Map();

map.put(“人力资源部”,“德邦物流”);

map.put(“IT部”,“德邦物流”);

map.put(“编辑部”,“德邦物流”);

if(map.contans(“IT部”)){

system.out.print(“good department”);

}

四、有一个class A ,它有一个默认的构造方法,请写一端代码实现 的动态加载?(4分) 

可以利用反射实现类的动态加载:

因为类A的构造器是无参的,所以实现A的动态的加载的代码如下:

public class B{

public static void main(String[] args){

try{

A a = (A)Class.forName(“A”).newInstance();

}catch(Exception e){

e.printStackTrace();

}

}

}

五、请写一个(单例)Singleton的例子,有效代码不得超过10行。(5分)

class Husband{

private static Husband instance=new Husband();

public static Husband newInstance(){

return instance;

}

private Husband(){}

}

六 发扑克牌:有52张扑克牌(从152),要随机分发到数组Card[52]中,请写一段程序

表达。(6分)

import java.util.*;

public class E{

public static void main(String[] args){

int Card[] = new int[52];

boolean ishave = true;

Set s = new HashSet();

for(int j = 0;j<52;j++){

Integer in = new Integer(j);

s.add(in);

}

int k = 0;

while(ishave){

if(!s.isEmpty()){

int ra = Math.round((float)Math.random()*100);

Integer rai = new Integer(ra);

if(s.contains(rai)){

s.remove(rai);

Card[k] = ra;

k++;

}

}else{ishave = false;}

}

for(int m =0;m<52;m++){

System.out.println(Card[m]);

}

}

}

七、  请完成程序,查询table1表中field1字段的值是1的纪录,并将查询结果定位到查询结果中的第三行并打印第三行的vcField的值,field1字段类型是number(用java代码实现)。 (5

Connection con = … ;
String sql = “select vcField from table1 where field1 = ?”;
Connection con = null;
String sql = “select vcField from table1 where field1 = ?”;
PreparedStatement ps = con.prepareStatement(sql);
ps.setInt(1,1);
ResultSet rs = ps.executeQuery();
rs.next();
rs.next();
rs.next();
String vcField = rs.getString(“vcField”);
System.out.println(vcField);

八、拷贝c:temp.txt文件为c:temp2.txt文件
import java.io.*;
public class FileCopyTest {
public static void main(String[] args) {
try{
FileReader fr = new FileReader(“c:\temp.txt”);
BufferedReader br = new BufferedReader(fr);
FileWriter fw = new FileWriter(“c:\temp2.txt”);
PrintWriter pw = new PrintWriter(fw,true);
String line ;
while ((line = br.readLine()) != null){
pw.println(line);
}
}catch(Exception e) {e.printStackTrace();}
}
}
.请完成程序,查询table1表中field1字段的值是1的纪录,并将查询结果定位到查询结果中的
第三行并打印第三行的vcField的值,field1字段类型是number.
Connection con = … ;
String sql = “select vcField from table1 where field1 = ?”;
Connection con = null;
String sql = “select vcField from table1 where field1 = ?”;
PreparedStatement ps = con.prepareStatement(sql);
ps.setInt(1,1);
ResultSet rs = ps.executeQuery();
rs.next();
rs.next();
rs.next();
String vcField = rs.getString(“vcField”);
System.out.println(vcField);

十、内部类的实现方式?

示例代码如下:
package test;
public class  OuterClass
{
private class InterClass
{
public InterClass()
{
System.out.println(“InterClass Create”);
}
}
public OuterClass()
{
InterClass ic = new InterClass();
System.out.println(“OuterClass Create”);
}
public static void main(String[] args)
{
OuterClass oc = new OuterClass();
}
}
输出结果:
C:>java test/OuterClass
InterClass Create
OuterClass Create

十一、你写一段Jdbc连Oracle的程序,并实现数据查询.

答:程序如下:

package hello.ant;

import java.sql.*;

public class  jdbc

{

String dbUrl=”jdbc:oracle:thin:@127.0.0.1:1521:orcl”;

String theUser=”admin”;

String thePw=”manager”;

Connection c=null;

Statement conn;

ResultSet rs=null;

public jdbc()

{

try{

Class.forName(“oracle.jdbc.driver.OracleDriver”).newInstance();

c = DriverManager.getConnection(dbUrl,theUser,thePw);

conn=c.createStatement();

}catch(Exception e){

e.printStackTrace();

}

}

public boolean executeUpdate(String sql)

{

try

{

conn.executeUpdate(sql);

return true;

}

catch (SQLException e)

{

e.printStackTrace();

return false;

}

}

public ResultSet executeQuery(String sql)

{

rs=null;

try

{

rs=conn.executeQuery(sql);

}

catch (SQLException e)

{

e.printStackTrace();

}

return rs;

}

public void close()

{

try

{

conn.close();

c.close();

}

catch (Exception e)

{

e.printStackTrace();

}

}

public static void main(String[] args)

{

ResultSet rs;

jdbc conn = new jdbc();

rs=conn.executeQuery(“select * from test”);

try{

while (rs.next())

{

System.out.println(rs.getString(“id”));

System.out.println(rs.getString(“name”));

}

}catch(Exception e)

{

e.printStackTrace();

}

}

}

 

2.12   JDBC中Statement和PreparedStatement有什么不同?简要说明PreparedStatement对性能的影响(5

2.13   请完成程序,查询table1表中field1字段的值是1的纪录,并将查询结果定位到查询结果中的第三行并打印第三行的vcField的值,field1字段类型是number(用java代码实现)。 (5

2.14   线程有哪两种实现方法? (5

 

评论列表
文章目录