程序运行结果为:
17、阅读下列程序,写出程序运行的结果: class SuperClass{ int x=10; int y=20;
public void show(){
System.out.println(\我是父类的成员方法!\}
class SubClass extends SuperClass{ int z=30; }
public class JC {
public static void main(String[] args) { SuperClass father=new SuperClass(); SubClass child=new SubClass();
System.out.println(\父类SuperClass成员变量、\
System.out.println(\子类SubClass成员变量、\ } }
程序运行结果为:
18、阅读下列程序,写出程序运行的结果: public class Class431 {
public static void main(String[] args) { int a = 3; char m='a';
prt(\ prt(\
prt(\ prt(\ }
static float test1(char x, int y) { int z = x+y; return z; }
static float test2() { int a = 60;
for (int i = 8; i < 12; i++) a= a+i;
prt(\ return a; }
static void prt(String s) { System.out.println(s); } }
程序运行结果为:
19、阅读下列程序,写出程序运行的结果: public class Class432 { static int i=123;
public static void main (String[] args) { int i=456;
System.out.println(\中的 i=\ m1( ); m2( ); }
static void m1( ) { int i=789;
System.out.println(\中的 i=\ }
static void m2( ) {
System.out.println(\类变量 i=\ i+=6;
System.out.println(\加 6 后的类变量 i=\ } }
程序运行结果为:
20、下面程序的结果是什么? class Tester { int var;
Tester(double var) {
this.var = (int)var; }
Tester(int var) { this(\ }
Tester(String s) { this();
System.out.println(s); }
Tester(){
System.out.println(\ }
public static void main(String[] args) Tester t = new Tester(5); } }
程序运行结果为:
21、以下代码的运行结果是 class Base{ int i; Base(){ add(1);
System.out.println(i); }
void add(int v){ i+=v;
System.out.println(i); }
void print(){
System.out.println(i); } }
class MyBase extends Base{ MyBase(){ add(2); }
{ void add(int v){ i+=v*2;
System.out.println(i); } }
public class TestClu {
public static void main(String[] args) { go(new MyBase()); //System.out.println(); }
static void go(Base b){ b.add(8); //b.print(); } }
程序运行结果为:
22、以下代码的输出结果是下列哪个选项? class Base{Base(){
System.out.println(\ } }
public class Checket extends Base{ Checket(){
System.out.println(\ super(); }
public static void main(String argv[]){ Checket c = new Checket(); // super(); } }
程序运行结果为:
23、给定下面的代码,哪个选项在替代\后可以被编译并且改变变量oak的值?
class Base{
static int oak=99; }
public class Doverdale extends Base{
public static void main(String argv[]){ Doverdale d = new Doverdale(); d.amethod(); }
public void amethod(){ //Here } }
程序运行结果为:
四、问答题
1、什么是继承?什么是父类?什么是子类?继承的特性可给面向对象编程带来什么好处?什么是单重继承?什么是多重继承? 2、什么是类成员,什么是实例成员?他们之间有什么区别? 3、抽象类和接口有什么区别? 4、类与对象的关系是什么? 5、Java的访问限定修饰符有几种,各自的访问权限是什么? 6、谈谈final, finally, finalize的区别。 7、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)? 8、abstract class和interface有什么区别? 五、判断题
1、类体中private修饰的变量在本类中能访问,类生成的对象也能访问。( )
2、一个类中,只能拥有一个构造器方法。( ) 3、抽象类中不可以有非抽象的方法。 ( )
4、如果将一个对象强制类型转换为一个不兼容的类型,将引发NullPointerException 异常。 ( )
5、Java中Object类是最顶层的类。 ( )
6 程序在编译通过以后,仍然可能出现运行时错误和逻辑错误。 ( )