java中子类调用父类方法

2025-02-22 22:52:28
推荐回答(3个)
回答1:

main方法中是可以的,父类是不能调用子类
的方法的。跟你说底层实现你也不懂,从面向对象上来说吧。
父类先于子类存在,子类从父类中生出来,所以子类知道父类,可以调用父类方法。但父类不知道子类,子类可以任意的出生,只要你愿意,所以父类无法调用子类,他不知他会有这样的子类,也不知有多少个子类,但子类的父类是唯一的。
简单点就是在java中父类是不能调用子类的方法的。

回答2:

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:

你的super()的用法不对,super有两个用法:
1、放在子类构造方法首行,是调用父类的构造方法。
2、在子类的方法中可以通过super.来调用父类允许调用的方法。
你把super放在外面,是不允许的。