Member 13567405 Ответов: 1

Как работает эта программа....


import java.util.*;

    public class TestLifeSupportSim2 {
    
        public static void main(String[] args) {
            ArrayList aList=new ArrayList();
            V2Radiator v2=new V2Radiator(aList);
            V3Radiator v3= new V3Radiator(aList);
            for(int z=0; z< 20; z++){
                RetentionBot ret=new RetentionBot(aList);
            }

        int totalPower = 0;
        for(Object o : aList)
        {
            totalPower += ((SimUnit) o).powerUse();
        }
        System.out.println("Total power: " + totalPower);
    }

}

class V2Radiator{
    V2Radiator(ArrayList list){
        System.out.println("making a v2 radiator");
    for(int x=0;x<5; x++){
        list.add(new SimUnit("V2Radiator"));
        
    }    
    }
}
class V3Radiator extends V2Radiator{
    V3Radiator(ArrayList list){
        super(list);
        for(int g=0;g<10;g++){
            list.add(new SimUnit("V3Radiator"));
            
        }
    }
}
class RetentionBot{
    RetentionBot(ArrayList rlist){
        rlist.add(new SimUnit("Rentention"));
        
    }
}
class SimUnit{
    String botType;
    SimUnit(String type){
        botType=type;
        
    }
    int powerUse(){
        if("Retention".equals(botType))
        {
            return 2;
            
        }
        else
        {
            return 4;
        }
    }
}


Что я уже пробовал:

Я не могу понять, как работает эта программа ...пожалуйста опишите меня строчка за строчкой

1 Ответов

Рейтинг:
0

OriginalGriff

Вы хоть представляете, как много работы по построчному объяснению кода?
Каждая строка нуждается в пояснении! Например:

int next = r.Next();

Создайте новую переменную под названием "next", которая может содержать целочисленное значение. Из ранее объявленного случайного экземпляра "r" вызовите метод "Next", чтобы получить новое случайное число, и назначьте его переменной "next".

Можете себе представить, сколько времени нам потребуется, чтобы объяснить даже такой очень короткий фрагмент кода, как ваш пример, строка за строкой?

Нет, этого не произойдет. Если у вас есть конкретная проблема, то задайте вопрос о ней. Но сначала подумайте - хотите ли вы сесть на 45 минут и напечатать построчное описание без веской причины?