博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于继承问题
阅读量:4840 次
发布时间:2019-06-11

本文共 686 字,大约阅读时间需要 2 分钟。

public class JiCheng {

public static void main(String[] args) {
new Person();
new Student1();

}

}

class Person{
private String color;
public Person(){
this.color = "red";
printColor();
}
public void printColor(){
System.out.println("Person的颜色为:"+color);
}
}
class Student1 extends Person{
private String color;
public Student1(){
this.color = "blue";
}
public void printColor(){
System.out.println("Student的颜色为:"+color);
}
}

 

 

第一行:Person red

第二行:Student       null
这个题出的很不错,考点是子类对父类方法的重写!创建父类对象就不说了,应该都明白。在创建子类对象时候,先执行父类构造器,再执行子类构造器,执行父类构造器的时候,当运行到print方法时会跳到子类的print方法(因为方法重写的原因),这时候还没有执行子类构造器,也就没对子类的color进行初始化,默认为null。所以第二行打印的color为null。

转载于:https://www.cnblogs.com/liteng/p/1234564564k.html

你可能感兴趣的文章
QT 使用QUdpSocket QUdpServer UDP 建立客户端与服务器端
查看>>
2019.3.27 Linux 学习
查看>>
隐私政策
查看>>
SSM-网站后台管理系统制作(4)---Ajax前后端交互
查看>>
webpack安装包出错
查看>>
【BZOJ4066】简单题(KD-Tree)
查看>>
有关浮点数的精度问题
查看>>
centos6.3与jexus5.4.4配置支持php(wordpress)
查看>>
[转]JQuery Ajax 在asp.net中使用总结
查看>>
STM32 SWD下载口无法下载的原因和解决办法
查看>>
阿里云ECS服务器折腾记(一):小白入门遇到的各类问题
查看>>
Linux笔记
查看>>
动态生成图片:
查看>>
(剑指Offer)面试题4:替换空格
查看>>
摔手机问题--第九届蓝桥杯
查看>>
小和问题、逆序对问题
查看>>
[C#] C# 知识回顾 - 异常介绍
查看>>
今天是我的生日。
查看>>
SQL导入的方法,网上看到的
查看>>
Unity3d 判断物体是否在可见范围内
查看>>