我是初学者,不是很会刚刚学面向对象,好多都不会。我要求写了一个球圆柱体表面积和体积的代码。用面向对象的做法。父类是Circle(圆)类里面的方法输入半径,求得面积和直径;子类是Cylinder(圆柱体)类,要求在子类是Cylinder(圆柱体)类重写(覆盖)Circle类的求表面积的getArea()方法,并求得圆柱体的表面积;在子类是Cylinder(圆柱体)的类getBulk(求体积)方法内,调用Cylinder(圆柱体)类getArea()的半径和直径。——求得圆柱体的体积;
父类:
子类:
好像很简答,但是我实在不知道怎么调用,重写以及构造器有参和无参的作用
父类:
import javax.swing.JOptionPane;
public class Circle extends Point {
public double radius; // 声明园圆的半径
public double area; // 声明园的面积
public double diameter;// 声明园的直径
// 构造器
public Circle() {
}
public double Circle(double radius) {
this.radius = radius;
return radius;
}
// 获取园表面积
public double getArea() {
String s = JOptionPane.showInputDialog(null, "请输入园的半径:");
radius = Double.parseDouble(s);
diameter = radius * 2;
area = (Math.PI * radius * radius);
JOptionPane.showMessageDialog(null, "面的直径为:" + diameter + "\n"
+ "园的面积为:" + area);
return diameter;
}
public static void main(String[] args) {
Circle circle = new Circle();
circle.getArea();
}
子类
public class Cylinder extends Circle {
public double high; //声明圆柱体的高
public double squareArea; //声明圆柱体的体面积
//构造器
public Cylinder(){
}
public Cylinder(int high){
this.high =high;
return ;
}
// 问题1:
//重写(覆盖)Circle类的求表面积的getArea();方法,并求得圆柱体的表面积;
//求园的体积
public void getBulk(int diameter){
//问题2:
//怎么调用父类Circle的半径和直径并且求得圆柱体的体积
}
请一定帮帮我 谢谢了
JAVA,请大家帮帮我,如何在子类重写(覆盖)父类的方法;如何在子类方法中调...
一,"如何在子类重写(覆盖)父类的方法"这个术语叫“重载”。很简单,首先把父类方法原封复制到子类里,然后修改函数体就可以。注意函数签名不能变。二,如何在子类方法中调用父类方法的变量值来用 这是做不到的,不可能在一个函数中调用另一个函数的局部变量。父类的属性是有可能用的,因为子类会...
java关于子类和父类构造方法的关系,犯迷糊!!
1、父类中没有显式定义任何构造方法,此时父类中实际有一个默认的无参数构造方法。这时,在子类中显式定义任何构造方法时,可以不用使用super调用父类的默认方法。2、父类中显式定义了默认的无参数构造方法,那么子类可以定义任意的构造方法,而不必使用super调用父类的构造方法 3、父类中显示定义了构...
Java学习:继承方法重写Override
在子类中覆盖重写父类方法时,应了解父类方法的用途和行为,根据子类需求决定是否重写。若父类方法已满足子类需求,则无需重写;若子类有特殊需求,应当重写父类方法。Java中还有一个`super`关键字,用于在子类覆盖父类方法时调用父类的原方法。例如,`Dog`类的`move()`方法可以这样实现:在该方法中...
Java方法重写时需要的5个问题!
在子类的实现中使用 Number 类型的子类 Long 类型,是可以正常重写父类的方法的,如下图所示:当然,如果和父类的返回类型保持一致也是可以的,如下图所示:但是,如果尝试将子类中的返回类型变大就会报错了,如下图所示(Object 是 Number 类型的父类):注意事项3:抛出的异常类型只能变小如果子类中...
java中什么是重写的语法规则?
父类的私有方法不能被重写; static修饰的方法不能被重写 返回值类型: 如果父类中方法返回值类型是八大基本类型、String和void,则必须相同; 如果是其他引用类型,则重写方法中返回值类型相同或其父类返回类型的子类。 关于异常,子类重写方法异常范围要小于父类方法异常或没有异常。 已赞过 已踩过< 你对这个回答的...
在java多态中,为什么调用子父类中的同名变量及函数时,变量调用的是父类...
Fu f= new Zi()首先你要知道“Fu f”是放在栈中,而“new Zi()”是放在堆中;编译的时候,是在的栈中f,就是Fu对象,父类变量;而实际运行的时候,f会指向堆中的“new Zi()”,就是子类对象,自然运行子类的函数
java中不同包中的子类怎么调用父类中的
您好,很高兴和您一起讨论问题,如下是我的想法:java中的权限控制有四种:public、protected、不写的时候、private,按照这样的顺序依次变得严格。要想在不同包的子类中调用父类的方法\/变量,应该使用protected、public控制关键字。谢谢,个人之见!
java方法覆盖参数列表必须一致吗?
这个叫重载,书上说的覆盖是指重写。重写是子类的方法覆盖父类的方法,要求方法名和参数都相同 重载是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同,最常见的重载的例子就是类的构造函数,可以参考API帮助文档看看类的构造方法 ...
java:子类对象向上转型为父类实例后,调用的是父类方法,还是子类...
子类没有重写父类方法,向上造型后调用的是父类方法。public class Test1 { public static void main(String[] args) { A k=new B();k.sayHi();k.hello();} } class A { public void sayHi(){ System.out.println("我是父类");} public void hello(){ System.out.println("我是父...
java初学提问 关于执行过程 和继承的一些问题,请各位大虾帮忙 谢谢_百度...
(静态成员包括static块)。2.你这里面有一个java思想,就是父类的引用指向子类的对象,其实是向上兼容的概念,如果你理解不了,你就记死,父类的引用指向子类的实体,如果通过该引用调用的方法是子类重写了父类的,那么调用的就是子类的方法。但是成员变量并不会被继承,所以不存在重写。3.类的加载,...