中文国产日韩欧美视频,午夜精品999,色综合天天综合网国产成人网,色综合视频一区二区观看,国产高清在线精品,伊人色播,色综合久久天天综合观看

高級(jí)Java面試題(2)

時(shí)間:2024-10-11 15:36:22 學(xué)人智庫 我要投稿
  • 相關(guān)推薦

高級(jí)Java面試題集合(2)

  垃圾回收的最佳做法?

高級(jí)Java面試題集合(2)

  用編程的方式,我們可以要求(記住這只是一個(gè)請求——不是一個(gè)命令)JVM通過調(diào)用System.gc()方法來運(yùn)行垃圾回收。

  當(dāng)內(nèi)存已滿,且堆上沒有對象可用于垃圾回收時(shí),JVM可能會(huì)拋出OutOfMemoryException。

  對象在被垃圾回收從堆上刪除之前,會(huì)運(yùn)行finalize()方法。我們建議不要用finalize()方法寫任何代碼。

  什么是初始化數(shù)據(jù)塊?

  初始化數(shù)據(jù)塊——當(dāng)創(chuàng)建對象或加載類時(shí)運(yùn)行的代碼。

  有兩種類型的初始化數(shù)據(jù)塊:

  靜態(tài)初始化器:加載類時(shí)運(yùn)行的的代碼

  實(shí)例初始化器:創(chuàng)建新對象時(shí)運(yùn)行的代碼

  什么是靜態(tài)初始化器?

  請看下面的例子:static{和}之間的代碼被稱為靜態(tài)初始化器。它只有在第一次加載類時(shí)運(yùn)行。只有靜態(tài)變量才可以在靜態(tài)初始化器中進(jìn)行訪問。雖然創(chuàng)建了三個(gè)實(shí)例,但靜態(tài)初始化器只運(yùn)行一次。

  public class InitializerExamples {

  static int count;

  int i;

  static{

  //This is a static initializers. Run only when Class is first loaded.

  //Only static variables can be accessed

  System.out.println("Static Initializer");

  //i = 6;//COMPILER ERROR

  System.out.println("Count when Static Initializer is run is " + count);

  }

  public static void main(String[] args) {

  InitializerExamples example = new InitializerExamples();

  InitializerExamples example2 = new InitializerExamples();

  InitializerExamples example3 = new InitializerExamples();

  }

  }

  示例輸出

  Static Initializer

  Count whenStaticInitializer is run is0.

  什么是實(shí)例初始化塊?

  讓我們來看一個(gè)例子:每次創(chuàng)建類的實(shí)例時(shí),實(shí)例初始化器中的代碼都會(huì)運(yùn)行。

  public class InitializerExamples {

  static int count;

  int i;

  {

  //This is an instance initializers. Run every time an object is created.

  //static and instance variables can be accessed

  System.out.println("Instance Initializer");

  i = 6;

  count = count + 1;

  System.out.println("Count when Instance Initializer is run is " + count);

  }

  public static void main(String[] args) {

  InitializerExamples example = new InitializerExamples();

  InitializerExamples example1 = new InitializerExamples();

  InitializerExamples example2 = new InitializerExamples();

  }

  }

  示例輸出

  Instance Initializer

  Count when Instance Initializer is run is 1

  Instance Initializer

  Count when Instance Initializer is run is 2

  Instance Initializer

  Count when Instance Initializer is run is 3

  什么是正則表達(dá)式?

  正則表達(dá)式能讓解析、掃描和分割字符串變得非常容易。Java中常用的正則表達(dá)式——Patter,Matcher和Scanner類。

  什么是令牌化?

  令牌化是指在分隔符的基礎(chǔ)上將一個(gè)字符串分割為若干個(gè)子字符串。例如,分隔符;分割字符串a(chǎn)c;bd;def;e為四個(gè)子字符串a(chǎn)c,bd,def和e。

  分隔符自身也可以是一個(gè)常見正則表達(dá)式。

  String.split(regex)函數(shù)將regex作為參數(shù)。

  給出令牌化的例子?

  private static void tokenize(String string,String regex) {

  String[] tokens = string.split(regex);

  System.out.println(Arrays.toString(tokens));

  }

  tokenize("ac;bd;def;e",";");//[ac, bd, def, e]

  如何使用掃描器類(Scanner Class)令牌化?

  private static void tokenizeUsingScanner(String string,String regex) {

  Scanner scanner = new Scanner(string);

  scanner.useDelimiter(regex);

  List matches = new ArrayList();

  while(scanner.hasNext()){

  matches.add(scanner.next());

  }

  System.out.println(matches);

  }

  tokenizeUsingScanner("ac;bd;def;e",";");//[ac, bd, def, e]

  如何添加小時(shí)(hour)到一個(gè)日期對象(Date Objects)?

  現(xiàn)在,讓我們?nèi)绾慰纯刺砑有r(shí)到一個(gè)date對象。所有在date上的日期操作都需要通過添加毫秒到date才能完成。例如,如果我們想增加6個(gè)小時(shí),那么我們需要將6小時(shí)換算成毫秒。6小時(shí)= 6 * 60 * 60 * 1000毫秒。請看以下的例子。

  Date date = new Date();

  //Increase time by 6 hrs

  date.setTime(date.getTime() + 6 * 60 * 60 * 1000);

  System.out.println(date);

  //Decrease time by 6 hrs

  date = new Date();

  date.setTime(date.getTime() - 6 * 60 * 60 * 1000);

  System.out.println(date);

  如何格式化日期對象?

  格式化日期需要使用DateFormat類完成。讓我們看幾個(gè)例子。

  //Formatting Dates

  System.out.println(DateFormat.getInstance().format(

  date));//10/16/12 5:18 AM

  帶有區(qū)域設(shè)置的格式化日期如下所示:

【高級(jí)Java面試題(2)】相關(guān)文章:

java面試題及答案10-03

10個(gè)經(jīng)典的Java面試題集合09-20

德國公司經(jīng)典面試題(2)07-10

計(jì)算機(jī)二級(jí)JAVA沖刺試題及答案(2)08-13

評(píng)高級(jí)職稱述職報(bào)告范文(2)05-15

小學(xué)高級(jí)教師述職報(bào)告(2)06-14

計(jì)算機(jī)二級(jí)Java備考沖刺試題及答案(2)09-24

計(jì)算機(jī)二級(jí)《JAVA》選擇題及答案(2)10-26

教師高級(jí)職稱述職報(bào)告(2)09-14

企業(yè)高級(jí)管理人員業(yè)績評(píng)價(jià)體系(2)08-25