试图学习Java的继承

  • 本文关键字:继承 Java 学习 java
  • 更新时间 :
  • 英文 :


我试图教自己如何在Java进行编程,现在我试图教自己如何使用继承。

我想创建一个名为PushButton的类,该类从类门继承。在我的类PushButton中,我有一种称为状态的方法,该方法采用一个名为"按钮"的布尔值,并取决于值按钮,将调用该方法打开或在类门中关闭。

我遇到的问题是,在我的主要方法中,我试图调用第25行中的方法状态,但是我收到的错误消息说

方法状态(布尔值(对于类型MAIN不确定。

我可以看到如何在不使用继承的情况下解决此问题,但这会破坏我要完成的目标的目的。有人知道我如何在使用继承时如何解决此问题?

我也尝试将Pushbutton和Door的课程公开,但后来我收到了新的错误消息,说这些课程必须在自己的文件中。另外,原始错误消息不会消失。

class Door{
    public void open() {
        System.out.println("Door is opened");
    }
    public void close() {
        System.out.println("Door is closed");
    }
}
class Pushbutton extends Door{
    public void status(boolean button) {
        if (button==true) {
            super.open();
        }
        else {
            super.close();
        }
    }
}
public class Main {
    public static void main(String[] args) {
        boolean button=true;
        status(button); //line 25
    }
}

您需要创建类型 pushButton 的对象,首先可以使用 pushbutton class class class

在这里: -

class Door{
    public void open() {
        System.out.println("Door is opened");
    }
    public void close() {
        System.out.println("Door is closed");
    }
}
class Pushbutton extends Door{
    public void status(boolean button) {
        if (button==true) {
            super.open();
        }
        else {
            super.close();
        }
    }
}
public class Main {
    public static void main(String[] args) {
        boolean open=true;
        // create object of type Pushbutton
        Pushbutton button = new Pushbutton();
        // call the method status from the object
        // and pass it the boolean parameter
        button.status(open); //line 25
    }
}

我也认为您不应该将其称为" pushbutton",一个按钮不是门(逻辑上(,也许是因为房屋打开和关闭?

  1. 带有静态main方法的类Main是您程序的输入。
  2. 每当您想调用其他类中类的非静态方法时,您必须在调用其方法之前定义类的实例。如果这些方法属于同一类,则可以直接调用另一种方法中的方法。
  3. 因此,您要调用Pushbutton类的status类,首先声明PushbuttonPushButton pushbutton = new Pushbutton()的实例,然后调用其方法pushbutton.status()
public class Main {
    public static void main(String[] args) {
        boolean open=true;
        // create an instance of Pushbutton
        Pushbutton pushbutton = new Pushbutton();
        // invoke the method and pass it a boolean value
        button.status(open); //line 25
    }
}

最新更新