Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 23.04.2014
Сообщений: 3
1

Ошибки в коде - школьное задание

23.04.2014, 00:31. Показов 1671. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребят, просьба не пинать. Только знакомлюсь с Java. Получил задание в школе, надо исправить ошибки в коде. Вижу, что не объявлен main class, что не правильно заданы условия if...Но ничего не выходит исправить, просто плыву с синтаксисом и не понимаю всех классов.

Буду очень благодарен любой помощи

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public class Stack {
    private final Object[] buf;
    private int            position;
    
    public Stack(int size) {
        buf = new Object[size];
    }
    
    public void push(Object o) {
        if (position > buf.length - 1)
            throw new OutOfMemoryError();
        
        buf[position++] = o;
    }
    
    public Object pop() {
        if (position <= 0)
            return null;
 
        return buf[--position];
    }
    
    public boolean isEmpty() {
        return (position == 0);
    }
    
    public boolean equals(Stack o) {
        return (buf == o.buf);
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.04.2014, 00:31
Ответы с готовыми решениями:

Сайт (Школьное Задание)
Доброго времени суток. Помогите пожалуйста с домашним заданием . Нужно сделать сайт - должны...

Школьное задание по информатике
Я совсем непрошаренная, поэтому буду благодарна любой помощи по заданиям :) ЗАДАНИЕ 1. Модель...

Школьное задание на ПАСКАЛЕ
Вообщем попросили сделать задание на паскале, а я не шарю вообще в нем. Короч кому не трудно,...

Задание матрицы: исправить ошибки в коде
Хочется задать матрицу n на m. Пишу в visual studio. #include&lt;cstdlib&gt; #include&lt;cmath&gt;...

5
3 / 3 / 2
Регистрация: 09.12.2013
Сообщений: 26
23.04.2014, 07:31 2
Здравствуйте, опишите ТЗ, которое хотел выполнить человек в школе. С точки зрения синтаксиса и условий все нормально, всё компилируется (если убрать public в public class Stack и сохранить в файле Stack.java). Реализацию вашего класса, я так понимаю, нужно создавать в отдельном классе (там будет присутствовать точка входа в программу - метод main()).
1
0 / 0 / 0
Регистрация: 23.04.2014
Сообщений: 3
23.04.2014, 09:07  [ТС] 3
При компиляции возникает ошибка Main methond not found in class Stack, please.....

Они и возникала
0
708 / 708 / 226
Регистрация: 04.03.2013
Сообщений: 1,384
23.04.2014, 09:38 4
Лучший ответ Сообщение было отмечено fenito как решение

Решение

Все можно сделать в пакете с основным классом, убрав public класса Stack, как сказали выше.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class MainClass {
    public static void main(String[] args) {
        int SIZE = 5;
        Stack stack = new Stack(SIZE);
        for (int i = 0; i < SIZE; i++)
            stack.push(i);
        while (!stack.isEmpty())
            System.out.println(stack.pop());
    }
}
 
class Stack {
    //...
}
1
0 / 0 / 0
Регистрация: 23.04.2014
Сообщений: 3
24.04.2014, 00:50  [ТС] 5
Я пробовал как нписано выше.

И так

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
   
        class Stack {
        .....
        }
 
        public static void main(String[] args) {
        int SIZE = 5;
        Stack stack = new Stack(SIZE);
        for (int i = 0; i < SIZE; i++)
            stack.push(i);
        while (!stack.isEmpty())
            System.out.println(stack.pop());
    }
 
}
И так

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
class Stack {
                   .....}
 
    public class MainClass {
    public static void main(String[] args) {
        int SIZE = 5;
        Stack stack = new Stack(SIZE);
        for (int i = 0; i < SIZE; i++)
            stack.push(i);
        while (!stack.isEmpty())
            System.out.println(stack.pop());
    }
    }
Спасибо, но не выходит. Я делаю javac Stack.java. Затем java Stack. И выскакивает ошибка Main method not found in class Stack. Please define the main method as.... public static....

Я уже голову сломал

Добавлено через 3 часа 25 минут
Проблема решено. Спасибо огромное.

Добавлено через 26 минут
Смотрите, а тут не нужен else? Перед вторым return?

Java
1
2
3
4
5
6
7
8
public Object pop() {
        if (position <= 0) 
            return null;
            
       
        return buf[--position];
        
    }
0
1563 / 1041 / 94
Регистрация: 17.04.2009
Сообщений: 2,995
24.04.2014, 08:06 6
В данном случае не нужен. С else запись будет эквивалентна.
0
24.04.2014, 08:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.04.2014, 08:06
Помогаю со студенческими работами здесь

Задание по делфи. Начинание. Найти ошибки в коде
1. программист разместил на форме компонент Edit и, изменив значение свойства Text, получил новый...

Найти ошибки в коде и исправить эти ошибки (Наследование)
Вот в общем 3 файла, изучаю наследование на примере односвязного и двусвязного списков: list.h...

Найти ошибки в коде и исправить эти ошибки
Есть у меня вот такой код: #include &lt;iostream&gt; using namespace std; class A{ private:...

Найти ошибки в коде и исправить эти ошибки - C++
Судя по вываливающейся ошибки, идет двойное освобождение памяти. У самого не получается отловить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru