文思创新-JAVA面试题

2009年04月21日 星期二 19:46

1、JSP的内置对象及其作用

答:

JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应):

request     用户端请求,此请求会包含来自GET/POST请求的参数

response     网页传回用户端的回应

page     JSP网页本身

exception   针对错误网页,未捕捉的例外

pageContext   网页的属性是在这里管理

session     与请求有关的会话期

application   servle正在执行的内容

out        用来传送回应的输出

config   Servlet的构架部件

 

2、javascript中如何全选多个checkbox?

 

<script language="javascript">

function selcheck() {

var objs = myTable.getElementsByTagName("input");

for(var i=0; i<objs.length; i++) {

    if(objs[i].type.toLowerCase() == "checkbox" )

      objs[i].checked = true;

}

}

</script>

**********************************************

       <html>

              <head>

                     <script language="javascript">

                            fuction selectAll(){

                                   for(int i=0;i<document.form1.elements.length;i++){

                                          var element=document.form1.elements[i];

                                          if(element.name!="selectAll"){

                                                 element.checked=document.form1.selectAll.checked;

                                          }

                                   }

                            }

                     </script>

              </head>

              <body>

                     <form name="form1">

                            <input type="checkbox" name="elements" value="1">choice1

                            <input type="checkbox" name="elements" value="2">choice2

                            <input type="checkbox" name="selectAll" value="3">selectAll

                     </form>

              </body>

       </html>

***************************************8

 

3、Java的基本类型有哪几种?

答:八种,整型:byte,short,int,long;浮点型:float,double;布尔型:boolean;字符型:char。

4、Unix中如何建一个目录,并给自己所有权限,同组访问权限,其他组无任何权限

答:mkdir dirname,chmod 740 dirname。

5、protect 修饰的方法与不加任何修饰的方法有什么不同?

答:类A有protected修饰的方法和属性,对其子类B可见;如果类A不加任何修饰的方法和属性,则对其同包级结构访问可见,其他情况不可见。

6、final,finally,finalize有什么不同?hashmap与hashtable有什么不同?

答:final, finally, finalize的区别。

   final可以修饰类,方法,变量,修饰方法表示方法不能被覆盖,修饰变量表示变量的值不可以改变,修饰类表示此类不能被继承。

   finally是处理异常结构的一部分,表示总是执行的代码。

   finalize是Obejct类的方法,用于垃圾回收,由虚拟机自动调用。

HashMap与Hashtable的不同点:

    1、 HashMap是轻量级的(线程不安全的,效率高的)集合,Hashtable是重量级的(线程安全的,效率低的)集合, 但是都属于Map接口的类,实现了将惟一键映射到特定的值上。

     2、HashMap 类没有分类或者排序,它允许一个 null 键和多个 null 值。 Hashtable 类似于 HashMap,但是不允许 null 键和 null 值。它也比 HashMap 慢,因为它是同步的。

7、byte i='A';

System.out.println("1=" + i);

System.out.println("2=" + (byte)i);

System.out.println("3=" + (char)i);

分别输出多少?

答:System.out.println("1=" + i):1=65

      System.out.println("2=" + (byte)i):2=65

      System.out.println("3=" + (char)i):3=A

8、写一个标准的单例模式

答:

public class Singleton {

   private static Singleton singleton;

   static{

      singleton=new Singleton();

   }

   private Singleton(){}

   public static Singleton getInstance(){

       return singleton;

   }

}

9、排序一个数组 [F,a,f,h,A,g,K],要求输出[A,a,F,f,g,h,K]

答:

核心代码:

Collections.sort(list, String.CASE_INSENSITIVE_ORDER);//根据指定的字母方式排序

package lp;

import java.text.SimpleDateFormat;

import java.util.*;

public class ListTest {

public static void main(String [] args ){

//String[] strArray = new String[] {"z", "a", "C"};

       // List list = Arrays.asList(strArray);

       // Collections.sort(list);//根据元素自然顺序排序

       // Collections.sort(list, String.CASE_INSENSITIVE_ORDER);//根据指定的字母方式排序   

   // Collections.sort(list, Collections.reverseOrder());//根据反转自然顺序方式排序

   // Collections.reverse(list);//反转列表排序

      }

}

*****************************************

public class Test_Array{

              public static char[] sort(char[] c){

                     for(int i=0;i<c.length;i++){

                     for(int j=i;j<c.length;j++){

                                  if(c[i]>='A'&&c[i]<='Z'){

                                         if((c[j]>='A'&&c[j]<='Z'&&c[i]>c[j])||(c[j]>='a'&&c[j]<='z'&&c[i]+32>c[j])){

                                                char temp = c[j];

                                                c[j] = c[i];

                                                c[i] = temp;

                                         }

                                  }else if(c[i]<='a'&&c[i]>='z'){

                                         if((c[j]>='a'&&c[j]<='z'&&c[i]>c[j])||(c[j]>='A'&&c[j]<='Z'&&c[i]-32>=c[j])){

                                                char temp = c[j];

                                                c[j] = c[i];

                                                c[i] = temp;

                                         }

                                   }

                     }

                     }

              }

              public void show(char[] d){

                     for(char u:d){

                            System.out.println(u);

                     }

              }

              public static void main(String[] args){

                     String str = "FafhAgK";

                     char[] c = str.toCharArray();

                     char[] d = Test_Array.sort(c);

                     Test_Array.show(d);

              }

   }

   ***********************************

 

10、写一个通用的查询语句,连接Orcle数据库的,用prepareStatement

public void testJdbc(){

Connection con = null;

PreparedStatement ps = null;

ResultSet rs = null;

try{

//step1:注册驱动;

Class.forName("oracle.jdbc.driver.OracleDriver");

//step 2:获取数据库连接;

con=DriverManager.getConnection(

"jdbc:oracle:thin:@192.168.0.39:1521:tarena","openlab","open123");

/************************查询************************/

//step 3:创建Statement;

String sql = "SELECT id, fname, lname, age, FROM

Person_test";

ps = con.prepareStatement(sql);

//step 4 :执行查询语句,获取结果集;

rs = ps.executeQuery();

//step 5:处理结果集—输出结果集中保存的查询结果;

while (rs.next()){

System.out.print("id = " + rs.getLong("id"));

System.out.print(" , fname = " +rs.getString("fname"));

System.out.print(" , lname = " +rs.getString("lname"));

System.out.print(" , age = " + rs.getInt("age"));

}

/************************JDBC 修改*********************/

sql = "UPDATE Person_Tbl SET age=23 WHERE id = ?";

ps = con.prepareStatement(sql);

ps.setLong(1, 88);

int rows = ps.executeUpdate();

System.out.println(rows + " rows affected.");

} catch (Exception e){

e.printStackTrace();

} finally{

try{

con.close(); //关闭数据库连接,以释放资源。

} catch (Exception e1) {

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值