在java中,如何从不同的文件调用方法?

在java中,如何从不同的文件调用方法?,java,class,methods,Java,Class,Methods,以下是我的两个文件: 文件1: 公共类步骤2{ 公共静态void main(字符串[]args){ 输出(“-STEP 2-”);lineBreak(); int size=inputINT(“您有多少智能设备:”); SmartHome[]sh=新的SmartHome[尺寸]; 对于(int i=0;i嗯,您正在创建对象数组sh=new SmartHome,这样您就可以通过sh[index].insertDevice(设备)调用对象中的方法;您必须通过类的实例调用它。它是基本的。而且,看起来您

以下是我的两个文件: 文件1:

公共类步骤2{
公共静态void main(字符串[]args){
输出(“-STEP 2-”);lineBreak();
int size=inputINT(“您有多少智能设备:”);
SmartHome[]sh=新的SmartHome[尺寸];

对于(int i=0;i嗯,您正在创建对象数组
sh=new SmartHome
,这样您就可以通过
sh[index].insertDevice(设备)调用对象中的方法;

您必须通过类的实例调用它。它是基本的。而且,看起来您想要创建一个带有
大小
智能设备的单一家庭,而不是一个
大小
智能家庭的数组。因此,请传递构造函数参数:
智能家庭sh=new SmartHome(大小);
Java方法不能从file@fantaghiroccojava是一个文件。当然可以。OP只是意味着这两个类在不同的.java文件中。
 public class Step2 {
       public static void main(String[] args) {
        output("-STEP 2-");lineBreak();


        int size = inputINT("How many smart devices do you have: ");

        SmartHome[] sh = new SmartHome[size];

        for(int i = 0;i<size;i++){
                SmartDevice insertValues = new SmartDevice(inputSTR(
                        "Device name " + (i+1)),
                        inputDBL("Device location " + (i+1)),
                        inputBLN("Device status " + (i+1)));
                        insertDevice(insertValues);            


        }
    public class SmartHome {

    private SmartDevice[] smartDevices;

    public SmartHome(int size){

        SmartDevice[] smartDevices = new SmartDevice[size];
    }
    public SmartHome(SmartDevice[] sd){enter code here
        smartDevices = sd;

    }


    public void insertDevice(SmartDevice device){


        for (int i=0;i<smartDevices.length;i++) { 
        if (smartDevices[i] == null) 
            smartDevices[i] = device;
            break;    
        }
    }