• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    JAVA面試題集(3)

    發布: 2007-7-14 21:19 | 作者: 佚名    | 來源: 網絡轉載     | 查看: 108次 | 進入軟件測試論壇討論

    領測軟件測試網 答:區別如下:

    作用域 當前類 同一package 子孫類 其他package

    public √ √ √ √

    protected √ √ √ ×

    friendly √ √ × ×

    private √ × × ×

    不寫時默認為friendly

    56、ArrayList和Vector的區別,HashMap和Hashtable的區別

    答:就ArrayList與Vector主要從二方面來說.

    一.同步性:Vector是線程安全的,也就是說是同步的,而ArrayList是線程序不安全的,不是同步的

    二.數據增長:當需要增長時,Vector默認增長為原來一培,而ArrayList卻是原來的一半

    就HashMap與HashTable主要從三方面來說。

    一.歷史原因:Hashtable是基于陳舊的Dictionary類的,HashMap是Java 1.2引進的Map接口的一個實現

    二.同步性:Hashtable是線程安全的,也就是說是同步的,而HashMap是線程序不安全的,不是同步的

    三.值:只有HashMap可以讓你將空值作為一個表的條目的key或value

    57、char型變量中能不能存貯一個中文漢字?為什么?

    答:是能夠定義成為一個中文的,因為java中以unicode編碼,一個char占16個字節,所以放一個中文是沒問題的

    58、多線程有幾種實現方法,都是什么?同步有幾種實現方法,都是什么?

    答:多線程有兩種實現方法,分別是繼承Thread類與實現Runnable接口

    同步的實現方面有兩種,分別是synchronized,wait與notify

    59、垃圾回收機制,如何優化程序?

    希望大家補上,謝謝

    60、float型float f=3.4是否正確?

    答:不正確。精度不準確,應該用強制類型轉換,如下所示:float f=(float)3.4

    61、介紹JAVA中的Collection FrameWork(包括如何寫自己的數據結構)?

    答:Collection FrameWork如下:

    Collection

    ├List

    │├LinkedList

    │├ArrayList

    │└Vector

    │ └Stack

    └Set

    Map

    ├Hashtable

    ├HashMap

    └WeakHashMap

    Collection是最基本的集合接口,一個Collection代表一組Object,即Collection的元素(Elements)

    Map提供key到value的映射

    62、Java中異常處理機制,事件機制?

    11、JAVA中的多形與繼承?

    希望大家補上,謝謝

    63、抽象類與接口?

    答:抽象類與接口都用于抽象,但是抽象類(JAVA中)可以有自己的部分實現,而接口則完全是一個標識(同時有多重繼承的功能)。

    編程題:

    1.現在輸入n個數字,以逗號,分開;

    然后可選擇升或者降序排序;

    按提交鍵就在另一頁面顯示

    按什么 排序,結果為, ,

    提供reset

    答案(1) public static String[] splitStringByComma(String source){

    if(source==null||source.trim().equals(""))

    return null;

    StringTokenizer commaToker = new StringTokenizer(source,",");

    String[] result = new String[commaToker.countTokens()];

    int i=0;

    while(commaToker.hasMoreTokens()){

    result[i] = commaToker.nextToken();

    i++;

    }

    return result;

    }

    循環遍歷String數組

    Integer.parseInt(String s)變成int類型

    組成int數組

    Arrays.sort(int[] a),

    a數組升序

    降序可以從尾部開始輸出



    2.金額轉換,阿拉伯數字的金額轉換成中國傳統的形式如:

    (¥1011)->(一千零一拾一元整)輸出。

    3、繼承時候類的執行順序問題,一般都是選擇題,問你將會打印出什么?

    答:父類:

    package test;

    public class FatherClass

    {

    public FatherClass()

    {

    System.out.println("FatherClass Create");

    }

    }

    子類:

    package test;

    import test.FatherClass;

    public class ChildClass extends FatherClass

    {

    public ChildClass()

    {

    System.out.println("ChildClass Create");

    }

    public static void main(String[] args)

    {

    FatherClass fc = new FatherClass();

    ChildClass cc = new ChildClass();

    }

    }

    輸出結果:

    C:>java test.ChildClass

    FatherClass Create

    FatherClass Create

    ChildClass Create



    4、內部類的實現方式?

    答:示例代碼如下:

    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

    再一個例題:

    public class OuterClass {

    private double d1 = 1.0;

    //insert code here

    }

    You need to insert an inner class declaration at line 3. Which two inner class declarations are



    valid?(Choose two.)

    A. class InnerOne{

    public static double methoda() {return d1;}

    }

    B. public class InnerOne{

    static double methoda() {return d1;}

    }

    C. private class InnerOne{

    double methoda() {return d1;}

    }

    D. static class InnerOne{

    protected double methoda() {return d1;}

    }

    E. abstract class InnerOne{

    public abstract double methoda();

    }

    說明如下:

    一.靜態內部類可以有靜態成員,而非靜態內部類則不能有靜態成員。 故 A、B 錯

    二.靜態內部類的非靜態成員可以訪問外部類的靜態變量,而不可訪問外部類的非靜態變量;return d1 出錯。



    故 D 錯

    三.非靜態內部類的非靜態成員可以訪問外部類的非靜態變量。 故 C 正確

    四.答案為C、E





    5、Java 的通信編程,編程題(或問答),用JAVA SOCKET編程,讀服務器幾個字符,再寫入本地顯示?

    答:Server端程序:

    package test;

    import java.net.*;

    import java.io.*;

    public class Server

    {

    private ServerSocket ss;

    private Socket socket;

    private BufferedReader in;

    private PrintWriter out;

    public Server()

    {

    try

    {

    ss=new ServerSocket(10000);

    while(true)

    {

    socket = ss.accept();

    String RemoteIP = socket.getInetAddress().getHostAddress();

    String RemotePort = ":"+socket.getLocalPort();

    System.out.println("A client come in!IP:"+RemoteIP+RemotePort);

    in = new BufferedReader(new



    InputStreamReader(socket.getInputStream()));

    String line = in.readLine();

    System.out.println("Cleint send is :" + line);

    out = new PrintWriter(socket.getOutputStream(),true);

    out.println("Your Message Received!");

    out.close();

    in.close();

    socket.close();

    }

    }catch (IOException e)

    {

    out.println("wrong");

    }

    }

    public static void main(String[] args)

    {

    new Server();

    }

    };

    Client端程序:

    package test;

    import java.io.*;

    import java.net.*;



    public class Client

    {

    Socket socket;

    BufferedReader in;

    PrintWriter out;

    public Client()

    {

    try

    {

    System.out.println("Try to Connect to 127.0.0.1:10000");

    socket = new Socket("127.0.0.1",10000);

    System.out.println("The Server Connected!");

    System.out.println("Please enter some Character:");

    BufferedReader line = new BufferedReader(new



    InputStreamReader(System.in));

    out = new PrintWriter(socket.getOutputStream(),true);

    out.println(line.readLine());

    in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

    System.out.println(in.readLine());

    out.close();

    in.close();

    socket.close();

    }catch(IOException e)

    {

    out.println("Wrong");

    }

    }

    public static void main(String[] args)

    {

    new Client();

    }

    };

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>