Java階段-測試筆試題B卷
Java階段-測試筆試題B卷
(滿分100分,時間120分鐘)
單項選擇題(共20題,每題2分,共40分)
1) 在Java類中,使用以下(?)聲明語句來定義公有的int型常量MAX。
public int MAX = 100;
final int MAX = 100;
public static int MAX = 100;
public static final int MAX = 100;
2) 編譯運行如下Java代碼,輸出結果是(???)。
class Base {
public void method(){
System.out.print ("Base method");
}
}
class Child extends Base{
public void methodB(){
System.out.print ("Child methodB");
}
}
class Sample {
public static void main(String[] args) {
Base base= new Child();
base.methodB();
}
}
Base method
Child methodB
Base method Child MethodB
編譯錯誤
3) 給定Java代碼如下所示,在橫線處新增下列(?)方法,是對cal方法的重載。
public class Test{
public void cal(int x, int y, int z) {}
}
public float cal(int x, int y, int z){ return 0; }
public int cal(int x, int y, int z){ return 0; }
public void cal(int x, int z){ }
public void cal(int z, int y, int x){ }
4) 下面關于Java接口的說法錯誤的是(?)。
一個Java接口是一些方法特征的集合,但沒有方法的實現
Java接口中定義的方法在不同的地方被實現,可以具有完全不同的行為
Java接口中可以聲明私有成員
Java接口不能被實例化
5) 下面Java代碼的運行結果是(??)。
class Penguin {
private String name; // 名字
private int health; // 健康值
private String sex; // 性別
public Penguin() {
health = 10;
sex = "雄";
}
public void print() {
System.out.println("企鵝的名字是" + name +
",健康值是" + health + ",性別是" + sex+ "。");
}
public static void main(String[] args) {
Penguin pgn = new Penguin();
pgn.print();
}
}
企鵝的名字是null,健康值是10,性別是雄。
企鵝的名字是null,健康值是0,性別是null。
企鵝的名字是null,健康值是0,性別是null。
編譯報錯
6) 在Java抽象類中定義變量,下面語法錯誤的是(?)。
static int male = 1;
final int male = 1;
int male = 1;
D.. ?abstract int male = 1;
7) 給定下列Java代碼,輸出結果是(?)。
class A ?{
public String show(D obj){
return ("A and D");
}
public String show(A obj){
return ("A and A");
}
}
class B extends A{
public String show(B obj){
return ("B and B");
}
public String show(A obj){ ?//A obj=new B();
return ("B and A");
}
public static void main(String[] args){
A a = new B();//多態
B b = new B();
System.out.println(a.show(b));
}
}
class D extends B {
}
A and D
A and A
B and B
B and A
8) 在Java接口中,下列選項中屬于有效的方法聲明是(?)。
public static void aMethod();
void aMethod();
void aMethod(){}
private void aMethod();
9) 在Java中,以下程序編譯運行后的輸出結果為(?)。
public class Test {
int x, y;
Test(int x, int y) {
this.x = x;
this.y = y;
}
public static void main(String[] args) {
Test pt1, pt2;
pt1 = new Test(3, 3);
pt2 = new Test(4, 4);
System.out.print(pt1.x + pt2.x);
}
}
6
3 4
8
7
10) 給定如下Java程序代碼,在橫線處加入(?)語句,可以使這段代碼編譯通過。
interface Parent{
public int count(int i);
}
public class Test implements Parent {
public int count(int i){
return i % 9;
}
}
public static void main(String[] args){
________________
int i = p.count(20);
}
}
Test t = new Test();
Parent p = new Test();
Parent p = new Parent();
Test t = new Parent();
11) Java中,如果類C是類B的子類,類B是類A的子類,那么下面描述正確的是(?)。
C不僅繼承了B中的公有成員,同樣也繼承了A中的公有成員
C只繼承了B中的成員
C只繼承了A中的成員
C不能繼承A或B中的成員
12) 下面說法正確的是( ?)。
匿名內部類編譯后不會生成.class文件
接口編譯后不會生成.class文件
抽象類中沒有構造方法
局部內部類只能訪問被final修飾的局部變量。
13) 給定如下一個Java源文件Child.java,編譯并運行Child.java,以下結果正確的是(?)。
class Parent1 {
Parent1(String s){
System.out.println(s);
}
}
class Parent2 ?extends Parent1{
Parent2(){
System.out.println("parent2");
}
}
public class Child extends Parent2 {
public static void main(String[] args) {
Child child = new Child();
}
}
編譯錯誤:沒有找到構造器Child()
編譯錯誤:沒有找到構造器Parent1()
正確運行,沒有輸出值
正確運行,輸出結果為:parent2
14) 下面對this的作用描述錯誤的是
當成員變量和局部變量重名的時候可以用this區分
this()語句必須放在構造函數的第一行,根據this后面括號中的參數調用本類其他的構造函數.
this可以調用本類的一般函數
this可以調用父類的一般函數
15) 下列選項中關于Java中super關鍵字的說法錯誤的是(?)。
super關鍵字是在子類對象內部指代其父類對象的引用
super關鍵字不僅可以指代子類的直接父類,還可以指代父類的父類
子類可以通過super關鍵字調用父類的方法
子類可以通過super關鍵字調用父類的屬性
16) 給定如下Java代碼?, 輸出結果是哪些()
public?class?Test{
private?static?int?counter=10;
public?static?void?main(String?[]?args){
System.out.println(++counter);
}
}
編譯運行Test.java,結果是?(?)
10
11
編譯錯誤
17) 在Java中,如果父類中的某些方法不包含任何邏輯,并且需要有子類重寫,應該使?用(?????)關鍵字來申明父類的這些方法。
final
static
void
abstract
18) 給定java代碼,如下:編譯運行,結果是
public?static?void?main?(String?[]?args){
String?s;
System.out.println(“s=”+s);
}
編譯錯誤
編譯通過,但出現運行時錯誤
正常運行,輸出s=null
正常運行,輸出s=
19) 給定Java代碼如下所示,則編譯運行后,輸出結果是(?)。
class Parent {
public void count() {
System.out.println(10%3);
}
}
public class Child ?extends Parent{
public void count() {
System.out.println(10/3);
}
public static void main(String args[]) {
Parent p = new Child();
p.count();
}
}
1
1.0
3
3.3333333333333335
20) 給定java程序,如下:
public?class?Test{
private?static?final?int?counter=10;
public?static?void?main(String?[]?args){
System.out.println(++counter);
}
}
編譯運行Test.java,結果是?(?)
10
11
編譯錯誤
運行時出現異常
多項選擇題(共10題,每題2分,共20分)
下列說法錯誤的是()
A . ?每次創建對象都會執行一次靜態代碼塊
默認初始化在構造方法之前執行
局部代碼塊在構造代碼塊之前執行
構造方法在顯示初始化之前執行
給定如下java?代碼,?以下(????)訪問控制修飾符可以填入下劃線處。
class?Parent{
void?eat(){
}
}
class?Child?extends?Parent {
_______?void?eat(){
}
}
protected
private
什么也不填
public
下面對static的描述正確的是
靜態修飾的成員變量和成員方法隨著類的加載而加載
非靜態的成員方法可以訪問靜態的成員變量
靜態修飾的成員可以被整個類對象所共享
靜態修飾的成員方法可以訪問非靜態成員變量
給定java代碼,如下:
abstract?class?Shape?????{
abstract?void?draw(?);
}
要創建Shape類的子類Circle,以下代碼正確的是()。
class?Circle?extends?Shape{????int?draw(?){}??????}
abstract?class?Circle?extends?Shape{??????}
class?Circle?extends?Shape{????void?draw(?);??}
class?Circle?extends?Shape{????void?draw(?){}?}
在Java中,下面關于抽象類的描述正確的是()。
抽象類可以被實例化
抽象類中有構造方法
抽象類中可以沒有抽象方法
聲明抽象類必須帶有關鍵字abstract
在java中,已定義了兩個接口B和C以下語句正確的是(?)
interface?A?extends?B,C
interface?A?implements?B,C
class?A?implements?B,C
class?A?implements?B,implements?C
關于abstract說法正確的是()
abstract可以修飾成員變量
被abstract修飾的方法不能有方法體
abstract可以修飾構造代碼塊
abstract可以修飾類
下面關于Java接口的說法正確的是()。
Java接口可以繼承多個接口
Java接口中可以被多個子類實現,一個類也可以同時實現多個接口
Java接口中可以聲明私有成員
Java接口有構造方法
分析如下Java代碼,如果想在控制臺上輸出“B類的test()方法”,則在主函數應填入()。
class A {
public void test() {
System.out.println("A類的test()方法");
}
}
class B extends A {
public void test() {
System.out.println("B類的test()方法");
}
public static void main(String args[]) {
______________________________
}
}
A a = new B();
a.test();
A a = new A();
a.test();
B b = new A();
b.test();
new B().test();
在Java接口中定義常量,下面語法正確的是()。
protected static int MALE = 1;
final int MALE = 1;
static int MALE = 1;
private int MALE = 1;
填空題(共10題,共20分)
解釋一下異常出現的原因和解決辦法
ArrayIndexOutofBoundsException
異常名稱:
產生原因:
解決辦法:
解釋一下異常出現的原因和解決辦法
NullPointerException
異常名稱:
產生原因:
解決辦法:
解釋一下異常出現的原因和解決辦法
IllegalArgumentException
異常名稱:
產生原因:
解決辦法:
解釋一下異常出現的原因和解決辦法
NoShchElementException
異常名稱:
產生原因:
解決辦法:
解釋一下異常出現的原因和解決辦法
FileNotFoundException
異常名稱:
產生原因:
解決辦法:
解釋一下異常出現的原因和解決辦法
FileNotFoundException: day01-code (拒絕訪問。)
異常名稱:
產生原因:
解決辦法:
解釋一下異常出現的原因和解決辦法
ConcurrentModificationException
異常名稱:
產生原因:
解決辦法:
解釋一下異常出現的原因和解決辦法
ClassCastException
異常名稱:
產生原因:
解決辦法:
解釋一下異常出現的原因和解決辦法
ParseException
異常名稱:
產生原因:
解決辦法:
解釋一下異常出現的原因和解決辦法
UnsupportedOperationException
異常名稱:
產生原因:
解決辦法:
上機題(共2題,共20分)
請編寫TCP協議網絡編程中客戶端與服務器代碼;
要求:
客戶端可以往服務器發送任意類型的文件(文件可以來自PC中任意路徑)
服務器接收客戶端發來的文件,并存入項目根目錄的Source(可以自行創建)文件夾內
服務器要求使用多線程技術,并在傳輸完成的時候向客戶端發送接收完畢信息
客戶端要求在傳輸完畢候能接收到服務器回顯”傳輸完成”的數據
請編寫復制文件夾案例;
要求
源路徑:附件中的文件夾
目的地路徑:項目根目錄
Java
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。