封装,计算半径,直径,面积。

时间:2015-03-08 22:52:12

标签: java encapsulation

我有一个数据结构分配,我能够编译我的第一个代码,但我不明白如何访问信息。这是说明。 (对不起,他们很长)

创建一个名为Circle的类,其字段名称为radius,diameter和area。包括将半径设置为1并计算其他两个值的构造函数。包括名为setRadius()和getRadius()的方法。 setRadius()方法不仅设置半径,还计算其他两个值(如您所知,圆的直径是半径的两倍,圆的面积是pi乘以半径的平方)。将类保存为Circle.java。 创建一个名为TestCircle的类,其main方法()声明了几个Circle对象。使用setRadius()方法,为一个小半径值指定一个圆(使用JOptionPane扫描仪的用户输入代码),并为另一个指定一个更大的半径值(也是用户的输入)。不要为第三个圆的半径赋值;而是保留在对象构造中分配的值。显示三个Circle对象的所有值。将该类保存为TestCircle.java。

继承我的第一堂课

public class Circle {

public int radius = 1;
public double diameter;
public double area;

//Constructor for circle class
public double Circle(int First){
 return radius;
}

//Start set and get for radius
 private double setRadius(int r){
    return radius = 5;
 }

 private double getRadius(){
  return radius;
 }

 //Start set and get for diameter
 public double setDiamter(double d){
    return diameter = 7;
 }
 public double getDiamter(){
  return radius * diameter;
 }

 //Start set and get for diameter
 public double setArea(double a){
    return area;
 }
 public double getArea(){
    return area * Math.PI * 2;
 }
 }

我的测试代码应该调用所有的第一个计算...我无法让第一个计算工作,所以我要求一些帮助,如何做到这一点。

 import java.util.Scanner;
 public class TestCircle {

 public static void main(String[] arges) {

 TestCircle C1 = new TestCircle();
  Scanner FirstNum = new Scanner(System.in);
  System.out.print("Enter a number between 1 and 10 to calculate the diamater");
  First = inputDevice.nextInt; //here is where i thought i could call the First method from the other document. but i'm wrong
  }
  }

1 个答案:

答案 0 :(得分:0)

你没有写任何名为" First" 。你不能称之为不存在的东西。首先;  1)写一个名为" First"  2)First = inputDevice.nextInt;将此代码与此代码交换,First = FirstNum.nextInt;扫描仪写错了。