Java
Я в отчаянии. Подробности внутри.
Я начинающий программист java и поэтому посещаю разные сайты по программированию. Там я беру коды, но когда я их вставляю, то выскакивают ошибки, то ещё что то. Я не понимаю что происходит! Ведь я беру коды с сайта, а на сайте эти коды писали опытные люди. Скажите, мне нужно к психологу? Ведь я столько времени уделяю чтению на разных сайтах (разборы кодов всяких) и всё это впустую!! Що делать? Бросать java или искать решение проблемы?
Не бери сложные примеры: они только запутывают и не годятся для учебы. Бери предельно простые и понятные, в которых ты можешь разобраться и понять каждый шаг.
Если ты узнал что-то новое — по возможности проверяй это на практике. Например, можно придумать себе задачу, которую, как тебе кажется, ты способен осилить при помощи того, что ты понял.
Один мой товарищ осваивает язык JavaScript. Он сделал немало учебных упражнений, но долгое время боялся программировать игру «Змейка»: всё откладывал на потом. И я его прекрасно понимаю: когда листаешь готовый пример из Интернета на несколько экранов — голова идет кругом от того, как там всё сложно.
Но мы не стали зацикливаться на готовом, а начали с самого простого и продвигались маленькими шажками, проверяя каждый из них.
1. Сначала создали таблицу из одной ячейки.
2. Потом изменили таблицу — сделали ее размер 20 на 20.
3. Научились заполнять ячейки.
4. Научились заполнять одну конкретную ячейку.
5. Сделали функцию, которая по заданным координатам находит одну ячейку и заполняет ее.
6. С помощью этой функции попробовали нарисовать что-нибудь.
7. Нарисовали змейку.
8. Задали массив для хранения координат сегментов, из которых состоит змейка.
9. Сделали функцию, которая рисует змейку по клеткам.
10. Сделали функцию, которая перемещает змейку на один шаг. Привязали эту функцию к щелчку мыши, чтобы проверить ее.
11. Задали выполнение этой функции через указанный интервал времени, чтобы змейка ползла сама.
12. Продумали реакцию змейки (изменение направления, шаг в этом направлении) при нажатии клавиш ↑↓←→.
Смотрели, пробовали, исправляли. Вскоре товарищ понял принцип и доделал игру сам: добавил яблоко, счет, паузу, условие смерти.
Если ты узнал что-то новое — по возможности проверяй это на практике. Например, можно придумать себе задачу, которую, как тебе кажется, ты способен осилить при помощи того, что ты понял.
Один мой товарищ осваивает язык JavaScript. Он сделал немало учебных упражнений, но долгое время боялся программировать игру «Змейка»: всё откладывал на потом. И я его прекрасно понимаю: когда листаешь готовый пример из Интернета на несколько экранов — голова идет кругом от того, как там всё сложно.
Но мы не стали зацикливаться на готовом, а начали с самого простого и продвигались маленькими шажками, проверяя каждый из них.
1. Сначала создали таблицу из одной ячейки.
2. Потом изменили таблицу — сделали ее размер 20 на 20.
3. Научились заполнять ячейки.
4. Научились заполнять одну конкретную ячейку.
5. Сделали функцию, которая по заданным координатам находит одну ячейку и заполняет ее.
6. С помощью этой функции попробовали нарисовать что-нибудь.
7. Нарисовали змейку.
8. Задали массив для хранения координат сегментов, из которых состоит змейка.
9. Сделали функцию, которая рисует змейку по клеткам.
10. Сделали функцию, которая перемещает змейку на один шаг. Привязали эту функцию к щелчку мыши, чтобы проверить ее.
11. Задали выполнение этой функции через указанный интервал времени, чтобы змейка ползла сама.
12. Продумали реакцию змейки (изменение направления, шаг в этом направлении) при нажатии клавиш ↑↓←→.
Смотрели, пробовали, исправляли. Вскоре товарищ понял принцип и доделал игру сам: добавил яблоко, счет, паузу, условие смерти.
Артем Татауров
Завтра сделаю твой ответ лучшим. Спасибо!! Ты мне очень помог! Другие отвечали не то, а ты в яблочко! Большое спасибо!
Начинающие начинают с учебников или с документации, чтобы понимать что пишут
Пример такого косяка в студию. И заодно текст и место ошибки.
шоб быть программистом... надо иметь хоть какое то профильное образование... а не заниматься самоедством...
Однозначно ты просто неправильно копируешь. Скорее всего вы вставили код не туда. Проверьте все фигурные скобки. Методы в классах, которым они пренадлежат, все блоки кода закрыты. Закрыты там, где надо. Нет опечаток и случайно копированных с сайта символов.
Это всё, что я мог бы сказать, если бы ты не дополнил информацию в комментариях.
Из тех скриншотов, которые вы показали в комментариях (надо было их прикрепить в ответе):
Для кого в статье написано:
"В этой статье будет описываться создание 2D игры на Java. Сразу предупреждаю, вы должны хотя бы базово знать язык Java, поскольку на подробное объяснение каждой строки у меня нету времени. И очень прошу вас, не списывать просто код, а пытаться понять что означает каждая строка, и писать со смыслом."
Пишется не Mein, а Main.
Не publick пишется, а public.
Метод paint должен быть внутри класса.
Методов вне класса в java не бывает.
Main должен наследоваться от JPanel.
Вам рано заниматься играми. Даже 2D.
Я помню, когда-то сам копировал код, не понимая его и потом разбирался в нём.
Но я копировал простые образцы, типа 3 кнопок на панели.
Или, допустим, 2 кнопки: "синий" и "жёлтый". На какую нажмёшь, того цвета фон JPanel станет.
Это простые примеры на которых можно учиться. Можно в них разобраться без подсказок.
Тем не менее, сейчас я понимаю - это было неэффективно.
Автор знает, что его статья для этого не подходит и специально пишет:
"Сразу предупреждаю, вы должны хотя бы базово знать язык Java.".
И ещё
"Очень прошу вас не списывать просто код".
Это именно для вас. И да, автор действительно знает, что он говорит и понимает, что за код ион приводит в пример.
Вы скопировали часть кода, но чтобы работало, надо полностью, ибо вы даже в "шапке" в 4 строчках, которые не скопировали, допустили ошибки.
Выводы:
I. Вам пока рано читать эту статью. Займитесь изучением Swing или JavaFX.
II. Не копируйте код, который не понимаете совсем. Из этого будет мало толка.
III. Когда задаёте вопрос на форуме вы должны быть уверены, что...
1. Вы минимум 5 дней пытались решить проблему и не получилось.
2. Вопрос хорошо сформулирован. Перечитайте его, подумайте, вдруг важной части информации нет? На ваш вопрос должно быть возможно подробно ответить, решив вашу проблему, без дополнительных сведений из комментариев.
Это всё, что я мог бы сказать, если бы ты не дополнил информацию в комментариях.
Из тех скриншотов, которые вы показали в комментариях (надо было их прикрепить в ответе):
Для кого в статье написано:
"В этой статье будет описываться создание 2D игры на Java. Сразу предупреждаю, вы должны хотя бы базово знать язык Java, поскольку на подробное объяснение каждой строки у меня нету времени. И очень прошу вас, не списывать просто код, а пытаться понять что означает каждая строка, и писать со смыслом."
Пишется не Mein, а Main.
Не publick пишется, а public.
Метод paint должен быть внутри класса.
Методов вне класса в java не бывает.
Main должен наследоваться от JPanel.
Вам рано заниматься играми. Даже 2D.
Я помню, когда-то сам копировал код, не понимая его и потом разбирался в нём.
Но я копировал простые образцы, типа 3 кнопок на панели.
Или, допустим, 2 кнопки: "синий" и "жёлтый". На какую нажмёшь, того цвета фон JPanel станет.
Это простые примеры на которых можно учиться. Можно в них разобраться без подсказок.
Тем не менее, сейчас я понимаю - это было неэффективно.
Автор знает, что его статья для этого не подходит и специально пишет:
"Сразу предупреждаю, вы должны хотя бы базово знать язык Java.".
И ещё
"Очень прошу вас не списывать просто код".
Это именно для вас. И да, автор действительно знает, что он говорит и понимает, что за код ион приводит в пример.
Вы скопировали часть кода, но чтобы работало, надо полностью, ибо вы даже в "шапке" в 4 строчках, которые не скопировали, допустили ошибки.
Выводы:
I. Вам пока рано читать эту статью. Займитесь изучением Swing или JavaFX.
II. Не копируйте код, который не понимаете совсем. Из этого будет мало толка.
III. Когда задаёте вопрос на форуме вы должны быть уверены, что...
1. Вы минимум 5 дней пытались решить проблему и не получилось.
2. Вопрос хорошо сформулирован. Перечитайте его, подумайте, вдруг важной части информации нет? На ваш вопрос должно быть возможно подробно ответить, решив вашу проблему, без дополнительных сведений из комментариев.
Посмотри видеоуроки, или на лекцию сходи хоть раз. Что ява, что сишарп - они легко осваиваются.
На вопрос об отсутствии информации я обычно ставлю NULL (nullable хуябле и т. д)
У вас шашки, а не искусственный интеллект. вы можете больше.
P.S а на вопрос ректора - поиграйте с моим ботом в шахматы - ведь он глупее, чем я.
На вопрос об отсутствии информации я обычно ставлю NULL (nullable хуябле и т. д)
У вас шашки, а не искусственный интеллект. вы можете больше.
P.S а на вопрос ректора - поиграйте с моим ботом в шахматы - ведь он глупее, чем я.
Вы зачем копируете другой код, Вы так ничему не научитесь. Возьмите учебник "Head First Java / Изучаем Java"и от курки до корки читай, вопросов возникнет больше, но у тебя будут базовые вещи читается легко сам по нему начинал. Все! Ни в коем случае не копируешь код что за "дичь" ты программистом или "копирайтом" заделался?
Похожие вопросы
- Задача. Есть несколько множеств множеств с числом элементов от 1 до 3 - пересечения возможны. Далее внутри...
- Java класс внутри класса
- А вы в курсе что... Подробности внутри!
- Вопрос про шотландскую вислоухую ( подробности внутри )
- Нужна помощь! Очень-очень (подробности внутри)
- Собачка чернеет и лысеет, подробности внутри =(
- Здравствуйте! У собаки воспаление на лице. Подробности внутри.
- Вопрос из сферы защиты прав потребителей! Подробности внутри!
- Требуется окрасить волосы на короткий срок. (подробности внутри)
- Помогите выбрать телефон (подробности внутри).