Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.87/872: Рейтинг темы: голосов - 872, средняя оценка - 4.87
68 / 68 / 1
Регистрация: 21.12.2012
Сообщений: 458

Java FAQ: для начинающих

18.01.2013, 18:49. Показов 178038. Ответов 118
Метки нет (Все метки)

Привет всем форумчанам,в этом Java FAQ,е постараюсь собрать все самое нужное о Java)
Для начала давайте разберемся,что такое Java?Как говорит нам вики:

Java — объектно-ориентированный язык программирования, разработанный компанией Sun Microsystems
(в последующем приобретённой компанией Oracle). Приложения Java обычно компилируются в специальный байт-код, поэтому они могут работать на любой виртуальной Java-машине (JVM) вне зависимости от компьютерной архитектуры. Дата официального выпуска — 23 мая 1995 года.(http://ru.wikipedia.org/wiki/Java)

Но Java это не только язык программирования,но и платформа,которая позволяет сделать нам все,что душа захочет,и вообще это классная весчь)

Пойдем дальше,многие видели,что есть какая-то Java SE,EE и.т.дНо какую Java,мне использовать?

Java SE — Java Standard Edition, основное издание Java, содержит компиляторы, API, Java Runtime Environment; подходит для создания пользовательских приложений, в первую очередь — для настольных систем.
Java EE — Java Enterprise Edition, представляет собой набор спецификаций для создания программного обеспечения уровня предприятия(сервлеты,jsp,и.тд).
Java ME — Java Micro Edition, создана для использования в устройствах, ограниченных по вычислительной мощности, например в мобильных телефонах, КПК, встроенных системах;
JavaFX — технология, являющаяся следующим шагом в эволюции Java как Rich Client Platform; предназначена для создания графических интерфейсов корпоративных приложений и бизнеса.
Java Card — технология предоставляет безопасную среду для приложений, работающих на смарт-картах и ​​других устройствах с очень ограниченным объемом памяти и возможностями обработки.

Видите,выбирай по вкусу,идем дальше,как мне начать пользоваться и писать на Java?Очень просто Нужно выпольнить несколько простых шагов:
  1. Нужно скачать JDK(скачать отсюда http://www.oracle.com/technetw... 33151.html)
  2. Установить JDK.Это просто щелкайте по установленному приложению,она загрузилась,дальше настройте системные переменные.Заходите Пуск\пр.щ.мыши по мой компьютер\свойства\слева меню дополнительные параметры системы\внизу переменные среды\системные переменные.Далее нажмите создать,и пропишите сначала
    JAVA_HOME(имя переменной) C:\Program Files\Java\jdk1.8.0_92(путь взял для примера)(значение переменной)
    PATH(имя переменной) C:\Program Files\Java\jdk1.8.0_92\bin(путь взял для примера)(значение переменной)
  3. Все!!)можно уже писать на Java,но вы скажете,что прямо в командной строке,я скажу -да)Но можно и в IDE(http://ru.wikipedia.org/wiki/%... 0%BA%D0%B8) .Их много,выбрал самые популярные):
    1. Eclipse
    2. Netbeans
    3. IntelliJ IDEA(версия Ultimate Edition - платная, Community Edition - бесплатная)
    4. Jdeveloper
Тут уж ваш выбор,где писать,почитайте,установите,какая вам понравится в ней и пишите)

Итак,мы все настроили ,установили,давайте что-нибудь напишем на Java,давайте,открываем понравившуюся IDE,и пишем в ней такое:
Java
1
2
3
4
5
public class Hello{
    public static void main(String[] args) {
        System.out.println("Тут не Hello Word,странно??");
    }
}
компилируем:
Bash
1
javac Hello.java
и запускаем:
Bash
1
java Hello
Смотрим в консоль ,и видим:
Тут не Hello Word,странно??
Можете порадоваться,но то,что вы сейчас написали,ради чего мучались,это капля в море,из всего моря..языка Java
Поэтому,мы же хотим стать крутыми программистами,нам нужно дольше изучать Java,и тут встает вопрос о литературе,долго о ней говорить я не буду,просто скажу:
Кей Хорстманн Гари Корнелл Java 2 Том 1.Основы
Кей Хорстманн Гари Корнелл Java 2 Том 2.Тонкости программирования
Я считаю(и не один я)лучшими книгами по Java для начинающих

На нашем форуме есть раздел Литература по Java Литература по Java .Там много интересного почитайте)

Вот пару интересных ссылок,которые могут помочь:
http://www.google.ru/
http://www.javaworld.com/
http://www.java2s.com/ (Много примеров интересных,и туториалов )
Ну и конечно:
https://www.cyberforum.ru/java/

(предлагайте ссылки в сообщениях)


P.S Предлагаю в этой теме выложить простые программы для начинающих(я в их числе)
Если я где-то ошибся ,исправьте,следующий FAQ,создание простого сайтика,с картинками!))
Всем пока,удачи!!)
И главное не путайте Java и JavaScript,это разные вещи)

Добавлено через 11 минут
Пару ссылок,дополнение:
http://habrahabr.ru/post/43293/
http://habrahabr.ru/post/66568/
http://habrahabr.ru/post/67777/
33
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.01.2013, 18:49
Ответы с готовыми решениями:

Java FAQ: для тех кто знает (учил) С/С++
1. Строки сравниваются не при помощи оператора == а при помощи метода equals ("a" == "a") == true...

JAva, с чего начать?
С чего начать ?

Книги по Java для начинающих
Подскажите пожалуйста какие книги вы посоветовали бы начинающему в изучении Java

118
0 / 0 / 0
Регистрация: 06.09.2014
Сообщений: 2
06.09.2014, 19:42
Помогите советом, полному новичку можно начать с 9-ого издания этих книг
Кей Хорстманн Гари Корнелл Java 2 Том 1.Основы
Кей Хорстманн Гари Корнелл Java 2 Том 2.Тонкости программирования
Или все же с более раннего(какое лучше?)
Заранее спасибо.
0
Заблокирован
07.09.2014, 18:48
Как на Java создать приложение с графическим интерфейса пользователя, создав дизайн этого интерфейса ("наформошлепив") визуально мышкой, по аналогии с C# для Winforms или Delphi?

1. Скачайте пакет NetBeans 8.0 + JDK.
http://www.oracle.com/technetw... 42931.html
(Не факт, что это лучшее средство для таких целей. Я виндоман и поэтому не профи в Java. Если кто знает лучше - может отписаться ниже, я рад буду. Но меня и это устраивает)
2. Нажмите кнопку Создать проект.
3. В окне Создать проект в категориях выберите Java, в проектах - Приложение Java, нажмите Далее.
4. Можете указать имя и выбрать расположение проекта и нажать Готово.
5. В окне Проекты заходим в узел нашего проекта, затем в Пакеты исходных кодов, затем в единственный тамошний пакет. В нем будет файл *.java. Удаляем его.
6. Щелкаем по пакету правой кнопкой мыши - Новый - Форма JFrame - Готово.
7. Открывается вкладка с формой.
В окне Палитра появляются элементы управления, которые можно перетащить мышкой на форму.
В окне Свойства - свойства выбранного элемента управления, доступные для изменения, а также события, где мы можем добавить или снять какое-то событие и затем написать его код, перейдя на вкладку Источник в окне формы.
8. Создав дизайн UI, нажимаем Запустить. Если будет вопрос "Класс *** не найден ***", нажимаем ОК. При следующем запуске этого вопроса не будет.
7. Приложение запускается. Видим окно с нашим дизайном.
8. Таким образом, используя NetBeans 8.0, можно быстро создать приложение с интерфейсом на Swing.

Добавлено через 45 секунд
Ну и ряд достаточно простых, но не совсем очевидных ответов на многие весьма частые вопросы по GUI Swing

В: 1. Как сделать, чтобы контролы Swing отображались в нативном стиле, как стандартные контролы на данной ОС?
О: В коде сверху добавьте import
Java
1
import javax.swing.UIManager;
Затем, перед созданием и показом JFrame, например, в функции public void run(), добавьте такой код
Java
1
2
3
try {
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception ex) { }
В: 2. Как сделать, чтобы JFrame отображался не в самом левом верхнем углу экрана, а чуть поотдаль?
О: Проблему такую видел только на Windows и решение пробовал только на Windows.
Поставьте в GUI Builder свойство locationByPlatform в true.
или в коде
Java
1
объект_JFrame.setLocationByPlatform(true);
В: 3. Как сделать, чтобы JFrame отображался по центру экрана?
О: В коде нужно вместо
Java
1
new класс_JFrame().setVisible(true);
написать
Java
1
2
3
класс_JFrame jf = new класс_JFrame();
jf.setLocationRelativeTo(null);
jf.setVisible(true);
В: 4. Как убрать стандартную рамку окна JFrame?
О: Поставить в GUI Builder свойство undecorated в true
или в коде
Java
1
объект_JFrame.setUndecorated(true);
0
oOPenGuiNOo
26.09.2014, 18:26
Ребят посоветуйте... с чего можно начать самообучение java... Хотелось бы все таки стать программистом!!!
4 / 1 / 0
Регистрация: 12.05.2015
Сообщений: 84
12.05.2015, 11:21
к сожалению ссылка мертвая

Добавлено через 25 минут
я еще не разобрался тут, в принципе хотел ответить на сообщение, где была ссылка на UML диаграммы.
и как понимать комментарий "тупой ... " ?!
0
J5
25 / 25 / 9
Регистрация: 22.12.2013
Сообщений: 107
19.05.2015, 16:51
Приветствую. Такая ситуация: до того как приступить к практике в Java я длительное время время писал на C++ в Dev-С++ и Builder. После установки различных сред Java я постоянно наступаю на одни и те же грабли: главный класс не фиксируется при попытке компиляции графических приложений, да и в случае несоответствия прежнему наименованию классов программы по прежнему не компилируются или не находится main(). Понимаю, что это мои косяки и нужно в ручную изменить фиксацию главного класса, да и прочесть руководство, но есть ли способ (или среда) который мог бы мне помочь менее заморочено писать код и компилировать его для начальной практики?
0
0 / 0 / 0
Регистрация: 04.06.2015
Сообщений: 1
04.06.2015, 16:32
Привет всем! Начал читать книгу "Java: руководство для начинающих" - Герберт Шилдт и сразу же столкнулся с проблемой. В книге есть первое задание для написания, но плохо описан процесс установки JDK7, собественно установил, но никак не могу понять. Как запустить javac - компилятор и java - интерпретатор, подскажите, где это запускается? В гугле есть - https://ru.wikibooks.org/wiki/... 0%BC%D1%8B, по этой инструкции можно или я что-то не так делаю?
0
 Аватар для reisal78
944 / 687 / 230
Регистрация: 28.04.2013
Сообщений: 1,925
04.06.2015, 20:23
c0o1eRrrr, для проверки в командную строку введите команду javac если после этой команды у вас вывелась информация
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Usage: javac <options> <source files>
where possible options include:
  -g                         Generate all debugging info
  -g:none                    Generate no debugging info
  -g:{lines,vars,source}     Generate only some debugging info
  -nowarn                    Generate no warnings
  -verbose                   Output messages about what the compiler is doing
  -deprecation               Output source locations where deprecated APIs are u
sed
  -classpath <path>          Specify where to find user class files and annotati
on processors
  -cp <path>                 Specify where to find user class files and annotati
 
.. и так далее...
то jdk установлена и настроена правильно.

Если появилась
Code
1
"javac" не является внутренней или внешней командой, исполняемой программой или пакетным файлом.
то вам нужно задать в переменной PATH путь к папке bin, которая находится в папке с установленной jdk
https://java.com/ru/download/help/path.xml
1
0 / 0 / 0
Регистрация: 01.10.2015
Сообщений: 1
01.10.2015, 13:04
Здравствуйте, для понимания работы classpath и sourcepath хочу запустить простенькую программу из командной строки (но не такую простую как HelloWorld).

програмка:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package justAPackage;
 
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
 
public class TestClass {
 
    static String s;
 
    public static void main(String... args) throws IOException {
 
    System.out.println("Как же запустить данную программу в командной строке???");
 
    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    s = reader.readLine();
 
    System.out.println("Ты напечатал: " + s);
    }
}
Насколько я понимаю, чтобы ее запустить мне нужно указать classpath для библиотек jar с импортируемыми классами.
Но где они находятся я так и не понял.
В данный момент выводит ошибку: cannot find symbol: class IOException.

Подскажите пожалуйста, я верно понял? Ошибка возникает из-за classpath ?
Где лежат стандартные библиотеки java, чтобы можно было запускать програмы из коммандной строки?

Спасибо!

Добавлено через 1 час 30 минут
С проблемой разобрался сам! Забыл импортировать IOException (код набираю в блокноте). Всем спасибо.
0
0 / 0 / 0
Регистрация: 22.10.2015
Сообщений: 6
22.10.2015, 21:09
клевая тема для новичков. спасибо автору!)
0
 Аватар для yurij04
3 / 3 / 2
Регистрация: 20.10.2015
Сообщений: 413
28.10.2015, 16:10
Купил я вчера 9-е издание Java Основы, спору нет книга шикарная! Очень трудно в начале,я просто запутался и не могу уже несколько дней прописать пути, скачал примеры прог но тоже не пойму то ли создать папку прям в jdk и все файлы скачанные туда поместитьили нет,пишу пути в консали она ошибку выдает,даже почитал немного о консоли как там что работает что за что отвечает и т.д., но все равно стою пока на месте но отступать не намерен,я сожру с обложкой эту книгу! ))))

Добавлено через 19 минут
И почему у меня в Program Files после установки jdk появляется в папке java не только jdk но и jre так должно быть?

Добавлено через 16 минут
А,уже понял почему)
0
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 37
09.12.2015, 20:38
Бородатые дядьки есть кто , кто может подсказать или по рекомендровать материалы для новчика (ничего не шарю в кодинге) для самостоятельного изучения без репетиторов и тд?)
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
10.12.2015, 01:05
Defoz, вы первый пост читали? Там ссылка на литературу.
0
1 / 1 / 0
Регистрация: 07.05.2014
Сообщений: 50
10.12.2015, 12:20
@Defoz Я учусь на ДжаваРаше, читаю философию Джава и полное руководство Джава 8 (Шилдт), правда есть ошибки у Шилдта.. Еще лекции Ткача и Головача на ютубе посмотри. А дальше можно следовать рекомендациям из этих источников.
0
0 / 0 / 0
Регистрация: 08.09.2015
Сообщений: 34
22.12.2015, 13:21
Если с нуля начинать изучать, это вообще реально?) Если до этого чуть-чуть изучал паскаль и делфи.
0
 Аватар для reisal78
944 / 687 / 230
Регистрация: 28.04.2013
Сообщений: 1,925
22.12.2015, 14:11
Wolf_Scomoroh, реально.
0
2 / 2 / 0
Регистрация: 28.04.2012
Сообщений: 80
21.04.2016, 21:01
Добрый день.
Решил стать java программистом. Диплом программиста есть.
Нашел курсы.
Из плюсов
Работают при МАУП КІТІ. (международная академия управления персоналом).
Что б туда попасть нужно показать «диплом программиста» и сдать экзамены. А это значит, что мы не будем тратить время на «типы переменных» и т д
Из минусов
Работают там "профессиональные преподаватели".
У меня нет знакомых которые участвовали в чем то подобном.
остальное
Длятся 2,5 месяца.

Программа обучения
1. JavaScript
2. Среда разработки Java 8 (Intellij Idea)
3. Базовый синтаксис и ООП на Java
4. Обработка ошибок с использованием исключений
5. Коллекции. Многокрасочность
6. Потоки введения-выведения. Сериализация в Java
7. Алгоритмы и структуры данных.
8. Обзор GUI
9. JavaAndroid
10. Техника поиска работы.

Хочу узнать ваше мнение:
Стоит ли с этим связывается? (платит за курсы)
Есть кто то из этих курсов? Как они вам?
Реально ли потом сразу на юниор программиста java? Или потом нужно доучится и в библиотеках разбросаться ?
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
21.04.2016, 22:35
Лис3, что еще за диплом программиста? Курс базовый . После него работу вы не найдете так как ничего знать не будите
0
2 / 2 / 0
Регистрация: 28.04.2012
Сообщений: 80
22.04.2016, 11:56
KEKCoGEN ,
"Диплом программиста" - "программирование электронно вычислительной техники и автоматизированных систем"

У меня ситуация такая:
Долго без работы не посидишь. Кушать хочется.
Если после курсов работать "не по специальности" то, скорее всего я "забю" на джава. И получится, что потрачу время и деньги в пустую.

Значит - для успеха мне нужно:
  1. план обучения
  2. конкретные сжатие сроки
  3. настойчивость.

Я хочу узнать
  • Стоит ли с этим связывается? (платит за курсы)
  • Есть кто то из этих курсов?
  • Как они вам?
  • Как быстро после курсов выйти на нужный уровень? (Что учить?, Что читать?, Что делать? Может у кого то есть личный опыт ? )
0
 Аватар для reisal78
944 / 687 / 230
Регистрация: 28.04.2013
Сообщений: 1,925
22.04.2016, 13:34
Лис3, ваши дипломы при приеме на работу будут смотреть в последнюю очередь =) Будут смотреть на опыт работы и знания.
По поводу курсов с одной стороны на курсах учиться проще, с другой стороны как сказал KEKCoGEN, вы после этих курсов будете знать азы, причем довольно поверхностно.
На ютубе можно поискать записи курса лекций. Мне, например, нравится вот этот: http://www.youtube.com/watch?v... 0A62BDEF06 азы просто и доступно.
Опять же по базовой java есть много отличных книг. В которых можно найти подробное описания всех базовых вещей.
Если вы молоды есть знания основ java и владеете английским языком то у вас есть неплохие шансы попасть на стажировку в крупную компанию, с перспективой дальнейшего трудоустройства.
Что бы устроиться джуном знания одних основ обычно не достаточно. Хотя я знаю пару форумчан, которые в своем городе устроились джунами обладая лишь знаниями SE.

Если очень хочется походить на курсы - походите на английский. Это точно не будет пустой тратой времени и денег )
0
0 / 0 / 0
Регистрация: 14.04.2016
Сообщений: 8
26.04.2016, 00:45
Я думаю, что вместо этого кода
Цитата Сообщение от Севак Посмотреть сообщение
Велосипед для переворачивания строк:
Java
1
2
3
        for(int i=0, j=s.length()-1; i<=s.length()-1; ++i, --j){
            rez.append(s.charAt(j));
        }
можно использовать этот
Java
1
2
3
        for( int i=s.length()-1 ; i>0 ; --i ){
            rez.append(s.charAt(i));
        }
Одну переменную использовать и для работы цикла и для обращения к элементам строки. Не компилировал, по идее должно работать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.04.2016, 00:45

Самоучитель java для начинающих
Пожалуйста, подскажите где взять нормальный самоучитель java, не понимаю, что это за язык((( P.S. Программировать хочу для Android,...

Литература по Java для начинающих
Какие книги вы бы посоветовали для тех,кто только начинает изучение Java?

Java FAQ: задачи
Всем привет. Недавно увидел достаточно много интересных задач, а почему бы нам не собрать в одном месте различные задания по Java, а...

Задача Java для начинающих. Шилдт Г. ошибка?
Ребята возможно баян. Но правда ль выходит в варианте ответа на стр 559 для поиска простого числа ошибка? Выводится число 4 - которое не...

Исходники кода для книги Java 8 (2015) Шилдт - руководство для начинающих
Там код иногда странные ошибки возникают особенно UNicode сбивается , не могу нормально точь в точь переписать, а исходинки чет именно на...


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

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
23. что сделано за последнее время.
anaschu 17.06.2026
• Эталон: Клиника НИИ питания РАМН, Москва — централизованный пищеблок, 225 коек, 180 пациентов • Git: репозиторий med2, ветка абсентеизм. Рабочий файл: СРесурсами1_v4. alp • Смежный проект:. . .
22. Подключение слоя системной динамики (потоковые диффуры): экономические метрики модели
anaschu 17.06.2026
Апдейт модели: финансовый контур, разделение затрат Продолжаю развивать модель рабочего коллектива на AnyLogic. В этот раз работа шла над агентом Экономика — финансовым SD-слоем модели. Задача:. . .
[golang] Insert Delete GetRandom O(1) (Leetcode: 380)
alhaos 16.06.2026
Insert Delete GetRandom O(1) Сложность: Medium Источник: LeetCode 380 Задача Реализовать структуру данных RandomizedSet, которая поддерживает следующие операции за O(1) в среднем:
Свет в конце тоннеля
kumehtar 16.06.2026
Поймал себя на одной мысли. Раньше мне всегда казалось неправильным жить без чёткого понимания, куда всё идёт. Будто я иду по дороге судьбы, но не знаю, куда она ведёт. А раз не знаю — значит,. . .
[golang] Реализация стека с поддержкой получения минимального элемента за O(1)
alhaos 16.06.2026
Min Stack Сложность: Medium Источник: LeetCode 155 Задача: Реализовать стек который поддерживает push, pop, top и получение минимального элемента за O(1). Методы:
[golang] Конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов.
alhaos 10.06.2026
Задача Реализовать конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов. Сигнатура func Fetch(urls string, maxConcurrent int) Result Пример urls :=. . .
[golang] Состояние гонки (race condition)
alhaos 10.06.2026
Состояние гонки (race condition) Состояние гонки (Race Condition) — это ошибка, возникающая при одновременном доступе нескольких горутин к одним и тем же данным без должной синхронизации. При этом. . .
Взрослые отношения, и почему они не получаются
kumehtar 09.06.2026
Когда в детстве ребёнок не получает от родителей чего-то важного, он лишается не просто приятных переживаний, а основы для формирования определённых внутренних качеств и навыков. Если ребёнок не. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru