|
0 / 0 / 1
Регистрация: 05.11.2012
Сообщений: 25
|
||||||||||||||||||||||||||||||||||||
DrawLine. Найти ошибки в программе10.03.2014, 15:29. Показов 1414. Ответов 5
Метки нет (Все метки)
Есть метод
Причем выдает очень много ошибок, половина связанных с repaint. На всякий случай остальной код
0
|
||||||||||||||||||||||||||||||||||||
| 10.03.2014, 15:29 | |
|
Ответы с готовыми решениями:
5
Найти ошибки в данной программе (известно что есть только 2 ошибки) Найти ошибки в программе Найти ошибки в программе |
|
5 / 5 / 1
Регистрация: 04.03.2014
Сообщений: 20
|
|||||||||||
| 11.03.2014, 20:01 | |||||||||||
|
Даже не знаю с чего начать..
![]()
Кликните здесь для просмотра всего текста
кстати, было бы понятнее, если бы Вы прикрепили к сообщению текст ошибки, убрав его под теги SPOILER
Далее вообще идёт безобразие
Дальше не смотрел. Напишите, в чём смысл задания. Интуитивно, чувствуется, что традиционный вывод случайных фигур, но, если возможно - формальное описание было бы лучше.
0
|
|||||||||||
|
0 / 0 / 1
Регистрация: 05.11.2012
Сообщений: 25
|
|
| 11.03.2014, 22:07 [ТС] | |
|
Код ошибки.
Кликните здесь для просмотра всего текста
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at figure.Panel.paintComponent(Panel.java:1 5) at javax.swing.JComponent.paint(JComponent. java:1054) at javax.swing.JComponent.paintChildren(JCo mponent.java:887) at javax.swing.JComponent.paint(JComponent. java:1063) at javax.swing.JComponent.paintChildren(JCo mponent.java:887) at javax.swing.JComponent.paint(JComponent. java:1063) at javax.swing.JLayeredPane.paint(JLayeredP ane.java:585) at javax.swing.JComponent.paintChildren(JCo mponent.java:887) at javax.swing.JComponent.paintToOffscreen( JComponent.java:5226) at javax.swing.RepaintManager$PaintManager. paintDoubleBuffered(RepaintManager.java: 1529) at javax.swing.RepaintManager$PaintManager. paint(RepaintManager.java:1452) at javax.swing.RepaintManager.paint(Repaint Manager.java:1249) at javax.swing.JComponent.paint(JComponent. java:1040) at java.awt.GraphicsCallback$PaintCallback. run(GraphicsCallback.java:39) at sun.awt.SunGraphicsCallback.runOneCompon ent(SunGraphicsCallback.java:78) at sun.awt.SunGraphicsCallback.runComponent s(SunGraphicsCallback.java:115) at java.awt.Container.paint(Container.java: 1967) at java.awt.Window.paint(Window.java:3877) at javax.swing.RepaintManager$3.run(Repaint Manager.java:819) at javax.swing.RepaintManager$3.run(Repaint Manager.java:796) at java.security.AccessController.doPrivile ged(Native Method) at java.security.ProtectionDomain$1.doInter sectionPrivilege(ProtectionDomain.java:7 6) at javax.swing.RepaintManager.paintDirtyReg ions(RepaintManager.java:796) at javax.swing.RepaintManager.paintDirtyReg ions(RepaintManager.java:769) at javax.swing.RepaintManager.prePaintDirty Regions(RepaintManager.java:718) at javax.swing.RepaintManager.access$1100(R epaintManager.java:62) at javax.swing.RepaintManager$ProcessingRun nable.run(RepaintManager.java:1677) at java.awt.event.InvocationEvent.dispatch( InvocationEvent.java:251) at java.awt.EventQueue.dispatchEventImpl(Ev entQueue.java:733) at java.awt.EventQueue.access$200(EventQueu e.java:103) at java.awt.EventQueue$3.run(EventQueue.jav a:694) at java.awt.EventQueue$3.run(EventQueue.jav a:692) at java.security.AccessController.doPrivile ged(Native Method) at java.security.ProtectionDomain$1.doInter sectionPrivilege(ProtectionDomain.java:7 6) at java.awt.EventQueue.dispatchEvent(EventQ ueue.java:703) at java.awt.EventDispatchThread.pumpOneEven tForFilters(EventDispatchThread.java:242 ) at java.awt.EventDispatchThread.pumpEventsF orFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsF orHierarchy(EventDispatchThread.java:150 ) at java.awt.EventDispatchThread.pumpEvents( EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents( EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDi spatchThread.java:91) Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at figure.Panel.paintComponent(Panel.java:1 5) at javax.swing.JComponent.paint(JComponent. java:1054) at javax.swing.JComponent.paintChildren(JCo mponent.java:887) at javax.swing.JComponent.paint(JComponent. java:1063) at javax.swing.JComponent.paintChildren(JCo mponent.java:887) at javax.swing.JComponent.paint(JComponent. java:1063) at javax.swing.JLayeredPane.paint(JLayeredP ane.java:585) at javax.swing.JComponent.paintChildren(JCo mponent.java:887) at javax.swing.JComponent.paintToOffscreen( JComponent.java:5226) at javax.swing.RepaintManager$PaintManager. paintDoubleBuffered(RepaintManager.java: 1529) at javax.swing.RepaintManager$PaintManager. paint(RepaintManager.java:1452) at javax.swing.RepaintManager.paint(Repaint Manager.java:1249) at javax.swing.JComponent.paint(JComponent. java:1040) at java.awt.GraphicsCallback$PaintCallback. run(GraphicsCallback.java:39) at sun.awt.SunGraphicsCallback.runOneCompon ent(SunGraphicsCallback.java:78) at sun.awt.SunGraphicsCallback.runComponent s(SunGraphicsCallback.java:115) at java.awt.Container.paint(Container.java: 1967) at java.awt.Window.paint(Window.java:3877) at javax.swing.RepaintManager$3.run(Repaint Manager.java:819) at javax.swing.RepaintManager$3.run(Repaint Manager.java:796) at java.security.AccessController.doPrivile ged(Native Method) at java.security.ProtectionDomain$1.doInter sectionPrivilege(ProtectionDomain.java:7 6) at javax.swing.RepaintManager.paintDirtyReg ions(RepaintManager.java:796) at javax.swing.RepaintManager.paintDirtyReg ions(RepaintManager.java:769) at javax.swing.RepaintManager.prePaintDirty Regions(RepaintManager.java:718) at javax.swing.RepaintManager.access$1100(R epaintManager.java:62) at javax.swing.RepaintManager$ProcessingRun nable.run(RepaintManager.java:1677) at java.awt.event.InvocationEvent.dispatch( InvocationEvent.java:251) at java.awt.EventQueue.dispatchEventImpl(Ev entQueue.java:733) at java.awt.EventQueue.access$200(EventQueu e.java:103) at java.awt.EventQueue$3.run(EventQueue.jav a:694) at java.awt.EventQueue$3.run(EventQueue.jav a:692) at java.security.AccessController.doPrivile ged(Native Method) at java.security.ProtectionDomain$1.doInter sectionPrivilege(ProtectionDomain.java:7 6) at java.awt.EventQueue.dispatchEvent(EventQ ueue.java:703) at java.awt.EventDispatchThread.pumpOneEven tForFilters(EventDispatchThread.java:242 ) at java.awt.EventDispatchThread.pumpEventsF orFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsF orHierarchy(EventDispatchThread.java:150 ) at java.awt.EventDispatchThread.pumpEvents( EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents( EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDi spatchThread.java:91) Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at figure.Panel.paintComponent(Panel.java:1 5) at javax.swing.JComponent.paint(JComponent. java:1054) at javax.swing.JComponent.paintChildren(JCo mponent.java:887) at javax.swing.JComponent.paint(JComponent. java:1063) at javax.swing.JComponent.paintChildren(JCo mponent.java:887) at javax.swing.JComponent.paint(JComponent. java:1063) at javax.swing.JLayeredPane.paint(JLayeredP ane.java:585) at javax.swing.JComponent.paintChildren(JCo mponent.java:887) at javax.swing.JComponent.paintToOffscreen( JComponent.java:5226) at javax.swing.RepaintManager$PaintManager. paintDoubleBuffered(RepaintManager.java: 1529) at javax.swing.RepaintManager$PaintManager. paint(RepaintManager.java:1452) at javax.swing.RepaintManager.paint(Repaint Manager.java:1249) at javax.swing.JComponent.paint(JComponent. java:1040) at java.awt.GraphicsCallback$PaintCallback. run(GraphicsCallback.java:39) at sun.awt.SunGraphicsCallback.runOneCompon ent(SunGraphicsCallback.java:78) at sun.awt.SunGraphicsCallback.runComponent s(SunGraphicsCallback.java:115) at java.awt.Container.paint(Container.java: 1967) at java.awt.Window.paint(Window.java:3877) at javax.swing.RepaintManager$3.run(Repaint Manager.java:819) at javax.swing.RepaintManager$3.run(Repaint Manager.java:796) at java.security.AccessController.doPrivile ged(Native Method) at java.security.ProtectionDomain$1.doInter sectionPrivilege(ProtectionDomain.java:7 6) at javax.swing.RepaintManager.paintDirtyReg ions(RepaintManager.java:796) at javax.swing.RepaintManager.paintDirtyReg ions(RepaintManager.java:769) at javax.swing.RepaintManager.prePaintDirty Regions(RepaintManager.java:718) at javax.swing.RepaintManager.access$1100(R epaintManager.java:62) at javax.swing.RepaintManager$ProcessingRun nable.run(RepaintManager.java:1677) at java.awt.event.InvocationEvent.dispatch( InvocationEvent.java:251) at java.awt.EventQueue.dispatchEventImpl(Ev entQueue.java:733) at java.awt.EventQueue.access$200(EventQueu e.java:103) at java.awt.EventQueue$3.run(EventQueue.jav a:694) at java.awt.EventQueue$3.run(EventQueue.jav a:692) at java.security.AccessController.doPrivile ged(Native Method) at java.security.ProtectionDomain$1.doInter sectionPrivilege(ProtectionDomain.java:7 6) at java.awt.EventQueue.dispatchEvent(EventQ ueue.java:703) at java.awt.EventDispatchThread.pumpOneEven tForFilters(EventDispatchThread.java:242 ) at java.awt.EventDispatchThread.pumpEventsF orFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsF orHierarchy(EventDispatchThread.java:150 ) at java.awt.EventDispatchThread.pumpEvents( EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents( EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDi spatchThread.java:91) Задание: Создать приложение, удовлетворяющее требованиям, приведенным в задании. Аргументировать принадлежность классу каждого создаваемого метода и корректно переопределить для каждого класса методы equals(), hashCode(), toString(). Создать объект класса Квадрат, используя классы Точка, Отрезок. Методы: • задание размеров, • растяжение, сжатие, поворот, • изменение цвета. Задание на тему наследования. Изначально делал так: Был класс отрезок(Point), в котором были массивы(а не поля как сейчас)xn,yn (координаты точки). Этот класс наследовал класс отрезок(Segment), в котором создавались еще массивы xk, yk, т.е. получается уже есть начальные координаты точки и конечные. Далее напрягся, не знал что делать с классом квадрат (Square). Думал как можно сгруппировать в нем такие отрезки, по координатам которых, прорисовывая их, получался квадрат. Подошел к преподу спросить, тот говорит, что вообще все неправильно. Оказывается должен был придумать ещё 1 класс, в котором будут массивы объектов класса Point и Segment, потом этот класс будет наследовать класс Square. Потом он сам подошел и начал писать как должно быть. Мне почему то кажется его идея не бредовой, с такими вот потом параметры в методе drawLine(square[i].segments[i].pointsBegin[i].x ...). И потом не понимаю для чего здесь переопределять методы equals(), hashCode(),toString(). Где в программе можно эти методы применить, что бы как то логично совпадало с самим заданием?
0
|
|
|
37 / 37 / 25
Регистрация: 19.11.2012
Сообщений: 197
|
||||||
| 11.03.2014, 22:44 | ||||||
|
farshmaker,
0
|
||||||
|
0 / 0 / 1
Регистрация: 05.11.2012
Сообщений: 25
|
|||||||||||||||||||||
| 12.03.2014, 00:21 [ТС] | |||||||||||||||||||||
|
Что-то я запутался в инициализации сквозь столько конструкторов) Получается nullpointerexception. Помогите разрулить. На данный момент вот что получилось.
0
|
|||||||||||||||||||||
|
5 / 5 / 1
Регистрация: 04.03.2014
Сообщений: 20
|
||||||||||||||||||||||||||
| 12.03.2014, 07:02 | ||||||||||||||||||||||||||
|
Будьте последовательны. Во всех трёх кусках кода ошибки
Ну и
Рекомендую повторить инициализацию массивов (это не долго, а жизнь легче станет) и учитесь читать сообщения об ошибках) Добавлено через 7 минут Процитирую "Ошибки начинающих java-программистов" 3. Забыл проинициализировать объекты, являющиеся элементами массива. В Java массив объектов - это на самом деле массив ссылок на объекты. Создание массива - это просто создание набора ссылок, ни на что не указывающих (то есть равных null). Чтобы на самом деле создать "полноценный" массив объектов, необходимо проинициализировать каждый элемент массива. Многие студенты не понимают этого; они считают, что, создавая массив объектов, они автоматически создают сами объекты. (В большинстве случаев, студенты приносят эту концепцию из C++, где создание массива объектов приводит к созданию самих объектов путем вызова их конструктора по умолчанию). В примере ниже, студент хочет создать 3 объекта класса StringBuffer. Код будет откомпилирован без ошибок, но в последней строке произойдет исключение NullPointerException, где происходит обращение к несуществующему объекту. Ошибочный пример:
элементы массива. Исправленный пример:
1
|
||||||||||||||||||||||||||
| 12.03.2014, 07:02 | |
|
Помогаю со студенческими работами здесь
6
Найти ошибки в программе Найти ошибки в программе Найти ошибки в программе Найти ошибки в программе Найти ошибки в программе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|