连接两个java类

时间:2015-03-19 23:27:06

标签: java

我试图在同一个程序中连接两个类,但我遇到了问题。 我有一个包含main的Describe类,并读入/读出所有信息。

    public class Describe{

public static void main(String[] args) {
    int side1, side2, side3;

    Scanner scan = new Scanner(System.in);
    Describe tri1 = new Describe();

    System.out.println("Enter an integer dimension for " +
            " side a of triangle 1: ");
    side1 = scan.nextInt();
    System.out.println("Enter an integer dimension for " +
            " side b of triangle 1: ");
    side2 = scan.nextInt();
    System.out.println("Enter an integer dimension for " +
            " side c of triangle 1: ");
    side3 = scan.nextInt();

    System.out.println("Triangle 1 has sides of: ");
    System.out.println("side a: " + tri1.getside1());//This is where the 
    error is 

当我试图调用方法说它无法找到符号时,它一直给我一个错误,但我不确定为什么。这是其他课程的开始

    public class Triangle extends Describe{
    private int side1;
    private int side2;
    private int side3;
    public int accumulator = 0;
    public int count = 0;
    public int perim = 0;
    public Triangle(int side1, int side2, int side3)
    {
     if (isValid(side1, side2, side3 )== true)
         accumulator = addTotalPerim();
     else 
        {
            side1 = 1; side2 = 1; side3 = 1;
        }
        count ++;            
    }
    public int getSide1()
    {
        return side1;
    }
    public int getSide2()
    {
        return side2;
    }
    public int getSide3()
    {
        return side3;
    }

3 个答案:

答案 0 :(得分:0)

没有您的具体错误可以提供很多帮助,但我能看到的却是

1。 Describe tri1 = new Describe(); 应该是Triangle类的实例getside1()感知Triangle位于tri1.getside1()类中。 getside1()为您提供错误,因为在Describe类中没有函数tri1.getside1()

2. tri1.getSide1()应为{{1}}

答案 1 :(得分:0)

在创建Triangle对象时,您永远不会将边值传递给构造函数。您也没有引用您的子类Triangle

Triangle tri = new Triangle(side1, side2, side3);

如果你真的想扩展你的describe类,你需要在Triangle构造函数中的某个地方调用super()并从那里处理它。

答案 2 :(得分:0)

System.out.println("side a: " + tri1.getside1());

Java方法区分大小写。

System.out.println("side a: " + tri1.getSide1());

您应该为Triangle

创建tri1个实例