Java入门习题(三)——初始化
2016-05-15 00:25
465 查看
Java入门习题
Java入门习题初始化部分
1请写出下列程序的运行结果
2请写出下列程序的运行结果
3请写出下列程序的运行结果
初始化部分
1,请写出下列程序的运行结果
class Father{ Father(){ System.out.println("father"); } } class Son extends Father{ Son(){ System.out.println("son"); } public static void main(String [] args){ new Son(); new Father(); } }
参考答案:
father son father
解析
子类的构造方法会默认在第一句增加super()方法,如果指定其他带参数的super方法则不执行默认方法
2,请写出下列程序的运行结果
class Father{ int i=0; public Father(String arg){ System.out.println(arg); i=1; } public Father(){ System.out.println("B"); i=2; } } class Son extends Father{ public Son(String arg){ System.out.println("C"); i=3; } public static void main(String [] args){ int i=4; Father f=new Son("A"); System.out.println(f.i); } }
参考答案:
B C 5
解析
因为没有指定调用父类的哪一个构造方法,所以编译器默认增加空参数的super()方法
3,请写出下列程序的运行结果
class Father{ int i=0; public Father(String s){ i=1; } } class Son extends Father{ public Son(String s){ i=2; } public static void main(String [] args){ Son son=new Son("hello world"); System.out.println(son.i); } }
参考答案:
编译失败
解析
子类没有指定调用父类的构造方法,默认为调用空参构造方法,但是父类没有提供空惨构造方法。 解决方案:在父类中添加一个空参的构造方法,或者是在子类中显示的指明有参的构造方法。
Java入门习题
初始化部分
1请写出下列程序的运行结果
2请写出下列程序的运行结果
3请写出下列程序的运行结果
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树