在父类构造器中使用子类中被重写的方法
来源:互联网 发布:stc12c5a60s2烧录软件 编辑:程序博客网 时间:2024/05/18 00:09
请看代码
package 憨八龟;
//好像懂了 JAVA有一种无歧义性 注重安全性 尽量无歧义 处理的很好了
public class hbg {
public static void main(String[] args)
{
hbg0 H=new hbg0();
hbg1 g=new hbg1();
}
}
class hbg0 extends hbg1{
private String name="憨八龟";
public int number=10;
public hbg0()
{
System.out.println("name:"+name+" "+"number:"+number);
}
public void shuchu()
{
System.out.println("笨");
}
}
class hbg1 extends hbg00{
public String name1="夏洛克";
public int number1=99;
public int number=22;
public hbg1()
{
shuchu();
//System.out.println("name1:"+name1+" "+"number1:"+number1+" "+this.number);
}
public void shuchu()
{
System.out.println("天才");
}
public void asd()
{
System.out.println("aaaaa");
}
}
class hbg00{
public String name1="夏洛克";
public int number1=99;
public int number=22;
public hbg00()
{
//shuchu();
}
public void shuchu()
{
this.number=100;
System.out.println("天ya");
}
public void asd()
{
System.out.println("aaaaa");
}
}
创建一个hbj0对象会调用父类的构造方法,父类中的构造方法还会调用它的父类中构造方法,(创建对象一定调用构造方法,而调用构造方法不一定创建了对象)(例如本例,虽然调用了两个构造方法,然而并没有创建出两个对象,知识把子类中属于父类的部分初始化了,仅此而已,)那么为什么我在终极父类中调用shuchu(),他会调用子类的方法呢,原因在于,你在调用方法是,是在堆中使用一个shuchu();这个方法,他指向程序段对应的输出方法,而在方法段的内部有一个this。他指向调用方法的当前对象,指向当前的对象所以使用子类中的shuchu()方法, 下面的实例化对象可以验证一下。 OK?
- 在父类构造器中使用子类中被重写的方法
- java 父构造器中调用子类重写的方法
- Java 父类构造函数中调用子类重写的方法
- //如果要在子类中调用父类的方法,则应在子类的构造方法中调用
- 关于在子类中重写父类的throws异常的方法的注意事项
- Java__子类中调用父类重写的方法。
- Java中子类重写父类方法的思想本质!
- 面向对象 子类中 < 重载 重写 >父类的方法
- 子类中方法与父类中形成重写关系,可以在构造方法中用super来调用父类中的该方法
- 在子类中显示的调用父类的有参构造函数的方法
- 在子类中调用父类的带参数的构造方法
- 在C++中子类继承和调用父类的构造函数方法
- 在C++中子类继承和调用父类的构造函数方法
- 在C++中子类继承和调用父类的构造函数方法
- 在C++中子类继承和调用父类的构造函数方法
- 在C++中子类继承和调用父类的构造函数方法
- 在C++中子类继承和调用父类的构造函数方法
- 在C++中子类继承和调用父类的构造函数方法
- 第七周-项目2 - 建立链队算法库
- NSPredicate模糊、精确、查询
- 第7周项目2 - 建立链队算法库
- 设置应用程序图标和引导画面
- c#比较和运算符重载
- 在父类构造器中使用子类中被重写的方法
- 使用Service服务下载网络图片并写入sdCard
- mysql中删除用户权限
- Python 3 读取不同编码的文本文件
- java实现简单的Socket通信
- 摘抄一篇文章android中LinearLayout中layout_weight详解
- iOS9适配
- 自学QT之歌曲列表
- jqPlot——基于jquery的饼状柱状等图绘制工具