顺便求高手解答我的疑问
能给我解释一下选择题的第9题为什么args[5]也行
写出结果题第2题 为什么是先Test后Demo
选择题
1. Java中用来实现继承的关键字是____A
A、extends B、implements C、public D、protected
2.如果要用到一个接口的关键字是____B
A、import B、implements C、extends D、final
3.接口是Java面向对象的实现机制之一,以下说法正确的是b
A、Java支持多重继承,一个类可以实现多个接口
B、Java只支持单重继承,一个类可以实现多个接口
C、Java只支持单重继承,一个类只可以实现一个接口
D、Java支持多重继承,但一个类只可以实现一个接口
4.请分析以下代码,请问下面____不可以产生Q8对象?b public class Q8{
public Q8(int i){}
public Q8(int i,float f){}
}
A、Q8 q=new Q8(); B、Q8 q=new Q8(10);
C、Q8 q=new Q8(10,10f); D、以上方法均不可以
5.设有下面两个类的定义:
class Person {
long id;
String name;
}
Class Student extends Person{
int scroe;
int getScore(){}
}
则类Student和类Person的关系是__b
A、包含关系 B、继承关系 C、关联关系 D、上述类定义有语法错误
6. 以下代码__c__语句会被执行?
① int i = 10;
try {
② System.out.println(i);
③ return;
} catch (Exception e) {
④ System.out.println("程序运行出现异常");
} finally {
⑤ System.out.println("程序运行到这里");
}
⑥ System.out.println("Bye Bye");
A、①②③④⑥ B、编译出错 C、①②③⑤ D、①②③ E、①②⑤⑥
7. __C__类是JAVA语言中所有类的父类。
A、class B、java.lang C、Object D、以上都不正确
8. 下列关于抽象类描述正确的是____C
A、某个抽象类的父类是抽象类,则这个类必须要重写父类中的所有抽象方法
B、接口和抽象类是一回事
C、绝对不能使用抽象类去创建对象
D、抽象类中不可以有非抽象方法
9.下面是在命令行中运行JAVA程序A, //为什么5也能
java A the first snow , the first snow came
怎样才能在main(String[] args)方法中访问单词"first"_B_d__?
A、args[0] B、args[1] C、args[2] D)args[5] E、以上都不正确
10. 下面的程序输出的结果是___b
public class A implements B {
int k=20;
public static void main(String args[]) {
int i;
B c1 = new A();
i= c1.k;
System.out.println("i="+i);
}
}
interface B {
int k = 10;
}
A) i=20 B) i=10 C) 程序有编译错误 D) i=true
____________________________________________________________________________
写出程序结果
1 class Demo
{
public static void func()//如果加上这个声明throws Exception 结果是: {
try
{
throw new Exception();
}
finally
{
System.out.println("B");
}
}
public static void main(String[] args)
{
try
{
func();
System.out.println("A");
}
catch(Exception e)
{
System.out.println("C");
}
System.out.println("D");
}
}
1:未加 编译失败--未报告的错误或异常---------
2:B
C
d
-----------------------------------------------------------
2. class Test
{
Test()
{
System.out.println("Test");
}
}
class Demo extends Test
{
Demo()
{
System.out.println("Demo");
}
public static void main(String[] args)
{
new Demo();
new Test();
}
}
Test
Demo
3. interface A{}
class B implements A
{
public String func()
{
return "func";
}
}
class Demo
{
public static void main(String[] args)
{
A a=new B();
System.out.println(a.func());。
}
}
编译失败 接口中没有定义func方法
4. class Fu
{
boolean show(char a)
{
System.out.println(a);
return true;
}
}
class Demo extends Fu
{
public static void main(String[] args)
{
int i=0;
Fu f=new Demo();
Demo d=new Demo();
for(f.show('A'); f.show('B')&&(i<2);f.show('C'))
{
i++;
d.show('D');
}
}
boolean show(char a)
{
System.out.println(a);
return false;
}
}
A
B
5 interface A{}
class B implements A
{
public String test()
{
return "yes";
}
}
class Demo
{
static A get()
{
return new B();
}
public static void main(String[] args)
{
A a=get();
System.out.println(a.test()); }
}
编译失败。多态调用了实现类中独有的方法
====================================================================
6.
写出程序结果:
class Super
{
int i=0;
public Super(String a)
{
System.out.println("A");
i=1;
}
public Super()
{
System.out.println("B");
i+=2;
}
}
class Demo extends Super
{
public Demo(String a)
{
System.out.println("C");
i=5;
}
public static void main(String[] args)
{
int i=4;
Super d=new Demo("A");
System.out.println(d.i);
}
}
B
C
5
====================================================================
7.
interface Inter
{
void show(int a,int b);
void func();
}
class Demo
{
public static void main(String[] args)
{
//补足代码;调用两个函数,要求用匿名内部类
Inter in = new Inter(){
Public void show(int a,int b){}
Public void func(){}
};
In.show(1,2);
In.func();
}
}
====================================================================
8.
写出程序结果
class TD
{
int y=6;
class Inner
{
static int y=3;
void show()
{
System.out.println(y);
}
}
}
class TC
{
public static void main(String[] args)
{
TD.Inner ti=new TD().new Inner();
ti.show();
}
}
内部类中有static成员,内部类必须是static
====================================================================
9
class Fu
{
int num=4;
void show()
{
System.out.println("showFu");
}
}
class Zi extends Fu
{
int num=5;
void show()
{
System.out.println("showZi");
}
}
class T
{
public static void main(String[] args)
{
Fu f=new Zi();
Zi z=new Zi();
System.out.println(f.num);
System.out.println(z.num);
f.show(); //showZi
z.show(); //showFu
}
}
10
class Demo
{
public static void main(String[] args)
{
try
{
showExce();
System.out.println("A");
}
catch(Exception e)
{
System.out.println("B");
}
finally
{
System.out.println("C");
}
System.out.println("D");
}
public static void showExce()throws Exception
{
throw new Exception();
}
}
B
C
D
补充题:
1.写出程序结果
class Test
{
public static String output="";
public static void foo(int i)
{
try
{
if(i==1)
throw new Exception();
output+="1";
}
catch(Exception e)
{
output+="2";
return;
}
finally
{
output+="3";
}
output+="4";
}
public static void main(String args[])
{
foo(0);
System.out.println(output);
foo(1);
System.out.println(output);
}
}
134
13423
2.写出程序结果
class Exc0 extends Exception{}
class Exc1 extends Exc0{}
class Demo
{
public static void main(String[] args)
{
try
{
throw new Exc1();
}
catch(Exception e)
{
System.out.println("Exception");
}
catch(Exc0 e)
{
System.out.println("Exc0");
}
}
}
编译失败 因为先捕获了父类异常
3
写出程序结果
class Super
{
public int get(){return 4;}
}
class Demo15 extends Super
{
public long get(){return 5;}
public static void main(String[] args)
{
Super s=new Demo15();
System.out.println(s.get());
}
}
_____编译失败
在Demo15类中,出现了有冲突的同名方法 |