java中子类调用父类方法

如题所述

第1个回答  2020-02-11
main方法中是可以的,父类是不能调用子类
的方法的。跟你说底层实现你也不懂,从面向对象上来说吧。
父类先于子类存在,子类从父类中生出来,所以子类知道父类,可以调用父类方法。但父类不知道子类,子类可以任意的出生,只要你愿意,所以父类无法调用子类,他不知他会有这样的子类,也不知有多少个子类,但子类的父类是唯一的。
简单点就是在java中父类是不能调用子类的方法的。
第2个回答  2019-04-17
interface
Shape
{
double
面积();
}
interface
Shape2D
extends
Shape
{
double
周长();
}
interface
Scaleable
{
void
scale(double
proportion);
}
class

implements
Shape2D
{
float
r;
圆(float
r1)
{
r=r1;
}
public
double
面积()
{
return
(3.14*r*r);
}
public
double
周长()
{
return
(2*3.14*r);
}
}
class
矩形
implements
Shape2D
{
float
a,b;
矩形(float
a1,float
b1)
{
a=a1;
b=b1;
}
public
double
面积()
{
return
(a*b);
}
public
double
周长()
{
return
(2*(a+b));
}
}
class
缩圆e799bee5baa6e59b9ee7ad9431333236373233
extends

implements
Scaleable
{
public
缩圆()
{
super(5);
}
public
void
scale(double
proportion)
{
System.out.println("缩小后的面积是"+proportion*面积());
}
}
class
A
extends
缩圆
{
public
static
void
main(String[]
args)
{
缩圆
sy=new
缩圆();
sy.scale(0.5);
}
}
这个是正确的
要好好掌握基础知识
第3个回答  2019-08-11
你的super()的用法不对,super有两个用法:
1、放在子类构造方法首行,是调用父类的构造方法。
2、在子类的方法中可以通过super.来调用父类允许调用的方法。
你把super放在外面,是不允许的。
相似回答