SlideShare a Scribd company logo
Язык программирования
Java
13 Delovaya St., Niznhy Novgorod, 603163, Russia
Tel.: +7 (8312) 778822, Fax: +7 (8312) 777790
Email: info@mera-group.com

URL: www.meranetworks.ru
История создания и
эволюция языка Java
Sun Microsystems (www.sun.com) – ныне часть
компании Oracle (www.oracle.com)

Patrick Naughton

James Gosling

Scott McNealy

Январь, 1991 г. Начало разработки нового языка программирования.
Главная причина недовольства С++:
Необходимо перекомпилировать, а зачастую и переписывать код под
каждую новую архитектуру микропроцеесора, операционную систему
и т.п.
2
История создания и
эволюция языка Java

Сентябрь, 1992 г.
Oak (дуб)

23 марта 1995 г.
Официальное объявление языка Java

1999 г. - Java 2 SE – Java 2 Standard Edition
3
Ключевые особенности
языка Java
•
•
•
•
•
•
•

архитектурная независимость и
переносимость кода
полная объектная ориентированность
устойчивость (надежность) кода
встроенный механизм поддержки
многопоточности
безопасность Java-программ
встроенная структура коллекций
удобство разработки GUI

4
Архитектурная независимость и
переносимость кода

C++
"Write Once, Run Anywhere"

Java
5
Архитектурная независимость и
переносимость кода
Байт-код – архитектурно нейтральный,
высокооптимизированный набор команд,
предназначенных для выполнения специальной
исполняющей системой.

Java
JVM (Java Virtual Machine, виртуальная Java-машина) –
исполняющая система, интерпретирующая байт-код
6
Архитектурная независимость и
переносимость кода

7
Полная объектная
ориентированность
Основная структурная единица программы – класс,
весь код Java-программы должен находиться внутри
одного или нескольких классов.

8
Устойчивость (надежность) кода
•
•
•
•
•
•

отсутствие адресной арифметики
технология «сборки мусора» (garbage
collection)
строгая типизация
отсутствие множественного наследования
классов
запрет перегрузки операторов
встроенная обработка исключений

«Java is C++ without the Guns and Knives» (С) J.Gosling

9
Поддержка многопоточности
Многопоточность Java предоставляет средства
создания приложений с множеством одновременно
активных потоков. Для эффективной работы с
потоками в Java реализован механизм семафоров и
средств синхронизации потоков: библиотека языка
предоставляет класс Thread, а система выполнения
предоставляет средства диспетчеризации и средства,
реализующие семафоры.

10
Безопасность

JVM - аналог виртуального
компьютера, расположенного
в оперативной памяти и
интерпретирующего байткод. Все действия Javaпрограммы замкнуты внутри
этого виртуального
компьютера. JVM может не
допускать деструктивных
действий Java-программ.

11
Встроенная структура коллекций
Структура коллекций (collections framework)
Java стандартизирует способ, с помощью
которого программы хранят и
обрабатывают структуры данных.
Структура коллекций

Интерфейсы

Реализации

Алгоритмы

12
Встроенная структура коллекций
Преимущества использования структуры коллекций:
1. Избавление от рутинных операций по
кодированию стандартных структур данных и
алгоритмов
2. Высокая эффективность реализации
3. Универсальность и простота изучения
(различные типы коллекций работают
похожим друг на друга образом и с высокой
степенью способности к взаимодействию)
4. Расширяемость
5. Параметризация

13
Удобство разработки GUI

В состав Java входят 2 библиотеки,
предназначенных для разработки GUI:
- AWT (Abstract Window Toolkit) –
платформно-зависимая библиотека,
вывод осуществляется через вызовы
OS API
- Swing - платформно-незаивисимая
библиотека, реализованная
полностью на Java, через OS API
выводится только окно, все
остальное рисуется средствами Java

14
Инструментальные средства
Большая часть инструментария для разработки
Java-программ распространяется бесплатно!
1. Java Software Development Kit - Oracle
Текущая версия Java(TM) SE Development Kit 7
http://www.oracle.com/technetwork/java/javase/downlo
ads/index.html
2. RAD – средства разработки:
–
–
–
–
–
–
–

Eclipse Project (open source project)
NetBeans (open source project)
IntelliJ IDEA (JetBrains)
JCreator Pro (Xinox Software)
Symantec Cafe (Symantec)
Visual J++ (Microsoft)
Together (TogetherSoft Corporation)

15
Первая программа на Java
class FirstProg
{public static void main(String args[ ])
{
System.out.println (“Hello, world”);
}
}

1.

-> FirstProg.class

2.

16
Литература и источники
информации в сети Интернет
1.
2.
3.
4.
5.

Ноутон П., Шилдт Г. Java 2 в подлиннике. – СПб, «BHV», 2001.
Г.Шилдт. Полный справочник по Java. – М.: Вильямс, 2007.
Б. Эккель. Thinking in Java. – Спб.:Питер, 2009.
Joshua Bloch. Effective Java: Second Edition. – Prentice Hall, 2008.
М.Гранд. Шаблоны проектирования в JAVA. Каталог популярных
шаблонов проектирования, проиллюстрированных при помощи
UML. – М.: Новое знание, 2004.

•
•

http://docs.oracle.com/javase/tutorial/
http://www.intuit.ru/department/pl/javapl/

17

More Related Content

Similar to 1. java lecture intro (20)

ODP
Java: вчера, сегодня, завтра
Леонид Ставила
 
PPT
0. hello java world
Oleksandr Zahoruiko
 
PDF
01 - Java. Введение в Java
Roman Brovko
 
PPTX
Lesson 01
Stormdjent
 
PDF
15 HappyDev-lite-2015 autumn. Анна Тарасенко. Java в современном мире, вторая...
HappyDev-lite
 
PPTX
Programming Java - Lection 01 - Basics - Lavrentyev Fedor
Fedor Lavrentyev
 
PPTX
1 лекция
AndreiVinokur
 
PPTX
Java Core. Lecture# 1. Intro
Anton Moiseenko
 
PPTX
Введение в java
AndreiVinokur
 
PDF
WordPress Shortcode
ssuserf59b92
 
PPTX
Step 1
DmitryTrushkin
 
PDF
лекция 01 прогр на java (тсн) - введение в java
Sergey Talipov
 
PDF
Глава1: Обзор технологии Java
metaform
 
PDF
Java осень 2013 лекция 1-1
Technopark
 
PDF
Java весна 2014 лекция 1
Technopark
 
PDF
1. Введение в Java
DEVTYPE
 
PPT
Ввведение в java
Unguryan Vitaliy
 
PPT
Введение в язык программирования «Java»
Unguryan Vitaliy
 
PPTX
Что такое Java? Кто такой Java разработчик?
GetITAbroad
 
PDF
Java осень 2014 занятие 1
Technopark
 
Java: вчера, сегодня, завтра
Леонид Ставила
 
0. hello java world
Oleksandr Zahoruiko
 
01 - Java. Введение в Java
Roman Brovko
 
Lesson 01
Stormdjent
 
15 HappyDev-lite-2015 autumn. Анна Тарасенко. Java в современном мире, вторая...
HappyDev-lite
 
Programming Java - Lection 01 - Basics - Lavrentyev Fedor
Fedor Lavrentyev
 
1 лекция
AndreiVinokur
 
Java Core. Lecture# 1. Intro
Anton Moiseenko
 
Введение в java
AndreiVinokur
 
WordPress Shortcode
ssuserf59b92
 
лекция 01 прогр на java (тсн) - введение в java
Sergey Talipov
 
Глава1: Обзор технологии Java
metaform
 
Java осень 2013 лекция 1-1
Technopark
 
Java весна 2014 лекция 1
Technopark
 
1. Введение в Java
DEVTYPE
 
Ввведение в java
Unguryan Vitaliy
 
Введение в язык программирования «Java»
Unguryan Vitaliy
 
Что такое Java? Кто такой Java разработчик?
GetITAbroad
 
Java осень 2014 занятие 1
Technopark
 

More from MERA_school (9)

PPT
2. java lecture syntax
MERA_school
 
PPT
10. java lecture generics&collections
MERA_school
 
PPT
9. java lecture library
MERA_school
 
PPT
8. java lecture threads
MERA_school
 
PPT
7. java lecture events
MERA_school
 
PPT
6. java lecture swing
MERA_school
 
PPT
5. java lecture io
MERA_school
 
PPT
4. java lecture exceptions
MERA_school
 
PPT
3. java lecture classes
MERA_school
 
2. java lecture syntax
MERA_school
 
10. java lecture generics&collections
MERA_school
 
9. java lecture library
MERA_school
 
8. java lecture threads
MERA_school
 
7. java lecture events
MERA_school
 
6. java lecture swing
MERA_school
 
5. java lecture io
MERA_school
 
4. java lecture exceptions
MERA_school
 
3. java lecture classes
MERA_school
 
Ad

1. java lecture intro

  • 1. Язык программирования Java 13 Delovaya St., Niznhy Novgorod, 603163, Russia Tel.: +7 (8312) 778822, Fax: +7 (8312) 777790 Email: [email protected] URL: www.meranetworks.ru
  • 2. История создания и эволюция языка Java Sun Microsystems (www.sun.com) – ныне часть компании Oracle (www.oracle.com) Patrick Naughton James Gosling Scott McNealy Январь, 1991 г. Начало разработки нового языка программирования. Главная причина недовольства С++: Необходимо перекомпилировать, а зачастую и переписывать код под каждую новую архитектуру микропроцеесора, операционную систему и т.п. 2
  • 3. История создания и эволюция языка Java Сентябрь, 1992 г. Oak (дуб) 23 марта 1995 г. Официальное объявление языка Java 1999 г. - Java 2 SE – Java 2 Standard Edition 3
  • 4. Ключевые особенности языка Java • • • • • • • архитектурная независимость и переносимость кода полная объектная ориентированность устойчивость (надежность) кода встроенный механизм поддержки многопоточности безопасность Java-программ встроенная структура коллекций удобство разработки GUI 4
  • 6. Архитектурная независимость и переносимость кода Байт-код – архитектурно нейтральный, высокооптимизированный набор команд, предназначенных для выполнения специальной исполняющей системой. Java JVM (Java Virtual Machine, виртуальная Java-машина) – исполняющая система, интерпретирующая байт-код 6
  • 8. Полная объектная ориентированность Основная структурная единица программы – класс, весь код Java-программы должен находиться внутри одного или нескольких классов. 8
  • 9. Устойчивость (надежность) кода • • • • • • отсутствие адресной арифметики технология «сборки мусора» (garbage collection) строгая типизация отсутствие множественного наследования классов запрет перегрузки операторов встроенная обработка исключений «Java is C++ without the Guns and Knives» (С) J.Gosling 9
  • 10. Поддержка многопоточности Многопоточность Java предоставляет средства создания приложений с множеством одновременно активных потоков. Для эффективной работы с потоками в Java реализован механизм семафоров и средств синхронизации потоков: библиотека языка предоставляет класс Thread, а система выполнения предоставляет средства диспетчеризации и средства, реализующие семафоры. 10
  • 11. Безопасность JVM - аналог виртуального компьютера, расположенного в оперативной памяти и интерпретирующего байткод. Все действия Javaпрограммы замкнуты внутри этого виртуального компьютера. JVM может не допускать деструктивных действий Java-программ. 11
  • 12. Встроенная структура коллекций Структура коллекций (collections framework) Java стандартизирует способ, с помощью которого программы хранят и обрабатывают структуры данных. Структура коллекций Интерфейсы Реализации Алгоритмы 12
  • 13. Встроенная структура коллекций Преимущества использования структуры коллекций: 1. Избавление от рутинных операций по кодированию стандартных структур данных и алгоритмов 2. Высокая эффективность реализации 3. Универсальность и простота изучения (различные типы коллекций работают похожим друг на друга образом и с высокой степенью способности к взаимодействию) 4. Расширяемость 5. Параметризация 13
  • 14. Удобство разработки GUI В состав Java входят 2 библиотеки, предназначенных для разработки GUI: - AWT (Abstract Window Toolkit) – платформно-зависимая библиотека, вывод осуществляется через вызовы OS API - Swing - платформно-незаивисимая библиотека, реализованная полностью на Java, через OS API выводится только окно, все остальное рисуется средствами Java 14
  • 15. Инструментальные средства Большая часть инструментария для разработки Java-программ распространяется бесплатно! 1. Java Software Development Kit - Oracle Текущая версия Java(TM) SE Development Kit 7 http://www.oracle.com/technetwork/java/javase/downlo ads/index.html 2. RAD – средства разработки: – – – – – – – Eclipse Project (open source project) NetBeans (open source project) IntelliJ IDEA (JetBrains) JCreator Pro (Xinox Software) Symantec Cafe (Symantec) Visual J++ (Microsoft) Together (TogetherSoft Corporation) 15
  • 16. Первая программа на Java class FirstProg {public static void main(String args[ ]) { System.out.println (“Hello, world”); } } 1. -> FirstProg.class 2. 16
  • 17. Литература и источники информации в сети Интернет 1. 2. 3. 4. 5. Ноутон П., Шилдт Г. Java 2 в подлиннике. – СПб, «BHV», 2001. Г.Шилдт. Полный справочник по Java. – М.: Вильямс, 2007. Б. Эккель. Thinking in Java. – Спб.:Питер, 2009. Joshua Bloch. Effective Java: Second Edition. – Prentice Hall, 2008. М.Гранд. Шаблоны проектирования в JAVA. Каталог популярных шаблонов проектирования, проиллюстрированных при помощи UML. – М.: Новое знание, 2004. • • http://docs.oracle.com/javase/tutorial/ http://www.intuit.ru/department/pl/javapl/ 17