java題,java題庫網站

本文目錄一覽:

Java基礎面試題都有哪些?

1.java異常機制的原理與應用\x0d\x0a答:每當程序出現異常之後,如果程序沒有進行相應的處理,則程序會出現中斷現象。\x0d\x0a實際上,產生了異常之後,JVM會拋出一個異常類的實例化對象,如果此時使用了try語句捕獲的話,則可以進行異常的處理,否則,交給JVM進行處理。當try語句捕獲異常之後,將與catch語句的異常類型進行匹配,如果匹配成功則執行catch內的語句。簡單的應用:在所以throws語句的地方加入try-catch。標準應用:try-catch-finally-throw-throws一起使用。 \x0d\x0a\x0d\x0a2. 垃圾回收機制的優點\x0d\x0a答:釋放無用的對象所佔用的空間。方式:自動回收,手動回收。使用System.gc(),實際上調用Runtime.getRuntime().gc()\x0d\x0a\x0d\x0a3. Error與Exception區別\x0d\x0a答:Error是jvm進行處理,是jvm出錯\x0d\x0aexception是可以由程序處理的,可以用try-catch捕獲的\x0d\x0a\x0d\x0a4. final,finally,finallize\x0d\x0a答:final定義的變量的值不能改變,定義的方法不能被覆蓋,定義的類不能被繼承\x0d\x0afinally是異常的統一出口,finallize是垃圾回收前的收尾工作,是Object類定義的\x0d\x0a\x0d\x0a5. Anonymous Inner Class是否可以extends,是否可以implements Interface\x0d\x0a答:允許繼承和實現,因為匿名內部類就是在抽象類和接口的基礎上發展起來的\x0d\x0a\x0d\x0a6. Static Nested Class 與Inner Class的區別\x0d\x0a答:使用Static定義的Class就是外部類,可以通過外部類. 內部類直接訪問\x0d\x0a而Inner Class是不能被外部訪問的,只能通過外部類的實例再找到內部類實例。\x0d\x0a\x0d\x0a7. HashMap and HashTable?\x0d\x0a答:HashMap:1) released in jdk 1.2,new Class 2)採用異步處理方式,性能較高,是非線程安全的 3)允許null\x0d\x0aHashTable:\x0d\x0a1)released in jdk 1.0 ,old Class \x0d\x0a2)採用同步處理方式,性能低,是線程安全的\x0d\x0a3)不允許null\x0d\x0a\x0d\x0a8. assert代表什麼?\x0d\x0a答:asserts是jdk 1.4之後發佈的新關鍵字,表示斷言,即程序執行到某個地方肯定是預計的值,一般開發很少使用。要使用assert,必須加上 -ea參數\x0d\x0a\x0d\x0a9. gc是什麼?\x0d\x0a答:gc是garbage collection,垃圾回收,使用gc可以進行垃圾空間的釋放\x0d\x0a\x0d\x0a10. String s = new String(“xyz”)產生了幾個對象?\x0d\x0a答:一個匿名對象xyz,在棧空間內。一個new實例化的對象,在堆空間內。\x0d\x0a\x0d\x0a11. sleep() and wait()?\x0d\x0a答:sleep()是Thread類定義方法,表示線程的休眠,可以自動喚醒\x0d\x0await()方法是Object類定義的方法,需要手動notify()和notifyAll()//sleep()不釋放資源,wait()釋放資源\x0d\x0a\x0d\x0a12. Overload與Override的區別\x0d\x0a答:Overload:重載\x0d\x0a |- 在一個類中定義的若干方法\x0d\x0a |- 所有的方法名相同,但參數類型或個數不同\x0d\x0a |- 只有參數有關,與返回類型無關\x0d\x0aOverride:覆寫\x0d\x0a |- 在繼承的關係中\x0d\x0a |- 子類定義了父類同名的方法,參數類型或個數最好完全一樣。\x0d\x0a |- 訪問權限不能更嚴格\x0d\x0a\x0d\x0a13. abstract class 和 interface有什麼區別?\x0d\x0a答:抽象類:\x0d\x0a |-由抽象方法和常量、變量、全局常量、構造方法、普通方法組成\x0d\x0a |-使用abstract聲明\x0d\x0a |-子類要通過extends繼承抽象類,子類如果不是抽象類,則必須覆寫抽象類的全部抽象方法\x0d\x0a |-存在單繼承的局限\x0d\x0a |-抽象類可以實現若干個接口\x0d\x0a接口:\x0d\x0a |-由抽象方法和全局常量組成\x0d\x0a |-使用interface關鍵字\x0d\x0a |-子類要通過implements實現接口,子類如果不是抽象類,則必須覆寫抽象類的全部抽象方法\x0d\x0a |-一個子類可以實現多個接口\x0d\x0a |-接口不能繼承一個抽象類,但允許繼承多個接口

java練習題求完整代碼

按照題目要求編寫的用javaBean規範設計的學生類Student的Java程序如下

需要創建user.java.test包,把Student.java文件和Test.java文件放入包中,編譯Student.java文件並且編譯運行Test.java文件得到運行結果

Student.java文件代碼如下

package user.java.test;

import java.io.Serializable;

public class Student implements Serializable{

private static final long serialVersionUID = 1L;

private String no;

private String name;

private double score;

public Student(){}

public Student(String no,String name,double score){

this.no=no;

this.name=name;

this.score=score;

}

public String getNo(){ return no;}

public void setNo(String no){ this.no=no;}

public String getName(){ return name;}

public void setName(String name){ this.name=name;}

public double getScore(){ return score;}

public void setScore(double score){ this.score=score;}

public String toString(){

return “學號:”+no+”,姓名:”+name+”,成績:”+score;

}

public static double getAvg(Student[] sArray){

double sum=0,avg;

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

sum=sum+sArray[i].getScore();

}

avg=sum/sArray.length;

return avg;

}

}

Test.java文件代碼如下

package user.java.test;

public class Test{

public static void main(String[] args){

Student[] sArray=new Student[5];

sArray[0]=new Student(“001″,”張三”,89.5);

sArray[1]=new Student(“002″,”李四”,82.5);

sArray[2]=new Student(“003″,”王五”,93);

sArray[3]=new Student(“004″,”趙六”,73.5);

sArray[4]=new Student(“005″,”孫七”,66);

System.out.println(“這些學生的平均分:”+Student.getAvg(sArray));

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

System.out.println(sArray[i].toString());

}

}

}

java題?

/**

*Person.java

*僅供參考

*/

public class Person{

private String id;//考慮到最後一位可能是X所以不能用long

private String name;

private boolean isFemale;

private int age;

private String hometown;//籍貫

private String address;//住址

public Person(){

this(“111111111111111101″,”張三”,true,24,”未知”,”未知”);

}

public Person(String id,String name,boolean isFemale,int age,String hometown,String address){

this.id=id;

this.name=name;

this.isFemale=isFemale;

this.age=age;

this.hometown=hometown;

this.address=address;

}

public void eating(String food){

System.out.println(name+”在吃”+food);

}

public void shopping(String goods){

System.out.println(name+”在買”+goods);

}

public void sleeping(int time){

System.out.println(name+”睡了”+time+”分鐘”);

}

public void setName(String aName){

if(“”.equals(aName))return;//姓名不能為空

name=aName;

}

public void setName(int aAge){

if(aAge0)return;//年齡不能是負的

age=aAge;

}

public void printPerson(){

System.out.println(“姓名:”+name+”\n身份證號碼:”+id+”\n性別:”+

(isFemale?’女’:’男’)+”\n年齡:”+age+”\n籍貫:”+hometown+”\n住址:”+address);

}

}

java題..

package aa.bb;

import java.util.Scanner;

public class Student {

private String id;

private String name;

private char sex;

private boolean is_gb;

private double math;

private double chinese;

private double english;

private double total;

public Student(){}

Scanner sc = new Scanner(System.in);

public Student(String id,String name,char sex,boolean is_gb){

this.id= id;

this.name = name;

this.sex = sex;

this.is_gb = is_gb;

}

public double total(){

System.out.println(“請輸入數學成績”);

this.math = sc.nextDouble();

System.out.println(“請輸入語文成績”);

this.chinese = sc.nextDouble();

System.out.println(“請輸入外語成績”);

this.english = sc.nextDouble();

this.total = math+chinese+english;

System.out.println(“總分為:”+total);

return total;

}

public void pj(){

System.out.println(“平均分為:”+(total/3));

}

}

package cc;

import aa.bb.Student;

public class Test {

public static void main(String[] args) {

Student s = new Student(“1″,”a”,’男’,false);

s.total();

s.pj();

}

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/282823.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-22 08:06
下一篇 2024-12-22 08:06

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Python爬蟲可以爬哪些網站

    Python是被廣泛運用於數據處理和分析領域的編程語言之一。它具有易用性、靈活性和成本效益高等特點,因此越來越多的人開始使用它進行網站爬取。本文將從多個方面詳細闡述,Python爬…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Python第一章題庫

    本篇文章將從以下幾個方面對Python第一章題庫進行詳細的闡述,包括基本語法、數據類型、控制語句、函數和模塊等方面。 一、基本語法 Python是一門簡單易學、功能強大的編程語言,…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發佈。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29

發表回復

登錄後才能評論