🗊Презентация Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты

Нажмите для полного просмотра!
Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №1Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №2Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №3Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №4Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №5Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №6Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №7Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №8Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №9Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №10Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №11Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №12Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №13Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №14Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №15Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №16Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №17Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №18Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №19Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №20Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №21Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №22Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №23Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №24Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №25Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №26Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №27Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №28Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №29Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №30Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №31Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №32Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №33Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №34Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №35Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №36Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №37Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №38Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №39Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №40Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №41Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №42Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №43Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №44Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №45Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №46Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №47Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №48Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №49Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №50Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №51Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №52Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №53Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №54Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №55Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №56Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №57Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №58Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №59Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №60Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №61Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №62Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №63Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №64Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №65Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №66Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №67Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №68Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №69Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №70Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №71Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №72Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №73Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №74Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №75Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №76Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №77Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №78Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №79Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №80Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №81Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №82Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №83Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №84Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №85Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №86Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №87Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №88Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №89Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №90Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №91Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №92Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №93Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №94Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №95Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №96Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №97Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №98Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №99Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №100Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №101Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №102Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №103Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №104Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №105Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №106Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №107Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №108Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №109Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №110Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №111Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №112Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №113Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №114Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №115Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №116Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №117Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №118Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №119Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №120Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №121Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №122Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №123Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №124Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №125Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №126Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №127Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №128Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №129Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №130Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №131Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №132Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №133Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №134Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №135Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №136Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №137Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №138Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №139Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №140Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №141Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №142Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №143Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №144Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №145Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №146Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №147Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №148Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №149Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №150Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №151Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №152Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №153Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №154Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №155Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №156Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №157Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №158Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №159Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №160Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №161Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №162Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №163Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №164Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №165Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №166Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №167Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №168Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №169Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №170Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №171Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №172Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №173Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №174Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №175Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №176Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №177Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №178Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №179Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №180Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №181Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №182Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №183Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №184Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №185Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №186Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №187Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №188Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №189Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №190Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №191Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №192Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №193Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №194Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №195Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №196Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №197Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №198Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №199Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №200Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №201Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №202Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №203Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №204Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №205Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №206Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №207Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №208Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №209Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №210Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №211Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №212Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №213Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №214Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №215Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №216Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №217Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №218Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №219Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №220Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №221Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №222Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №223Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №224Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №225Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №226Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №227Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №228Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №229Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №230Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №231Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №232Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №233Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №234Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №235Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты, слайд №236

Содержание

Вы можете ознакомиться и скачать презентацию на тему Java.SE.01. Java fundamentals. Введение в язык java. Типы данных, переменные, операторы. Простейшие классы и объекты. Доклад-сообщение содержит 236 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





JAVA FUNDAMENTALS
Описание слайда:
JAVA FUNDAMENTALS

Слайд 2





Сожержание
Введение в язык Java
Типы данных, переменные, операторы
Простейшие классы и объекты
Java Beans
Массивы
Code conventions
Параметризованные классы
Перечисления
Внутренние классы
Документирование кода
Описание слайда:
Сожержание Введение в язык Java Типы данных, переменные, операторы Простейшие классы и объекты Java Beans Массивы Code conventions Параметризованные классы Перечисления Внутренние классы Документирование кода

Слайд 3





Введение в язык Java
Описание слайда:
Введение в язык Java

Слайд 4





Введение в язык Java. Язык программирования Java
Java - это объектно-ориентированный, платформенно-независимый язык программирования, используемый для разработки информационных систем, работающих в сети Internet.
Объектно-ориентированный язык Java, разработанный в Sun Microsystems, предназначен для создания переносимых на различные платформы и операционные системы программ. Язык Java нашел широкое применение в Интернет-приложениях, добавив на статические и клиентские Web-страницы динамическую графику, улучшив интерфейсы и реализовав вычислительные возможности. Но объектно-ориентированная парадигма и кроссплатформенность привели к тому, что уже буквально через несколько лет после своего создания язык практически покинул клиентские страницы и перебрался на сервера. На стороне клиента его место занял язык JavaScript.
Описание слайда:
Введение в язык Java. Язык программирования Java Java - это объектно-ориентированный, платформенно-независимый язык программирования, используемый для разработки информационных систем, работающих в сети Internet. Объектно-ориентированный язык Java, разработанный в Sun Microsystems, предназначен для создания переносимых на различные платформы и операционные системы программ. Язык Java нашел широкое применение в Интернет-приложениях, добавив на статические и клиентские Web-страницы динамическую графику, улучшив интерфейсы и реализовав вычислительные возможности. Но объектно-ориентированная парадигма и кроссплатформенность привели к тому, что уже буквально через несколько лет после своего создания язык практически покинул клиентские страницы и перебрался на сервера. На стороне клиента его место занял язык JavaScript.

Слайд 5





Введение в язык Java. Использование памяти
В Java все объекты программы расположены в динамической памяти (heap) и доступны по объектным ссылкам, которые в свою очередь хранятся в стеке.  Это решение исключило непосредственный доступ к памяти, но усложнило работу с элементами массивов. 
Необходимо отметить, что объектные ссылки языка Java содержат информацию о классе объектов, на которые они ссылаются, так что объектные ссылки - это не указатели, а дескрипторы объектов. Наличие дескрипторов позволяет JVM выполнять проверку совместимости типов на фазе интерпретации кода, генерируя исключение в случае ошибки.
Описание слайда:
Введение в язык Java. Использование памяти В Java все объекты программы расположены в динамической памяти (heap) и доступны по объектным ссылкам, которые в свою очередь хранятся в стеке. Это решение исключило непосредственный доступ к памяти, но усложнило работу с элементами массивов. Необходимо отметить, что объектные ссылки языка Java содержат информацию о классе объектов, на которые они ссылаются, так что объектные ссылки - это не указатели, а дескрипторы объектов. Наличие дескрипторов позволяет JVM выполнять проверку совместимости типов на фазе интерпретации кода, генерируя исключение в случае ошибки.

Слайд 6





Введение в язык Java. Жизненный цикл программы на Java
Описание слайда:
Введение в язык Java. Жизненный цикл программы на Java

Слайд 7





Введение в язык Java. Простое линейное приложение. Example 1
Результат:
Описание слайда:
Введение в язык Java. Простое линейное приложение. Example 1 Результат:

Слайд 8





Введение в язык Java. Простое объектно-ориентированное приложение. Example 2
Результат:
Описание слайда:
Введение в язык Java. Простое объектно-ориентированное приложение. Example 2 Результат:

Слайд 9





Введение в язык Java. Компиляция и запуск приложения из командной строки
Создайте файл Console.java со следующим содержанием
Скомпилируйте программу командой javac.exe Console.java
Описание слайда:
Введение в язык Java. Компиляция и запуск приложения из командной строки Создайте файл Console.java со следующим содержанием Скомпилируйте программу командой javac.exe Console.java

Слайд 10





Введение в язык Java. Компиляция и запуск приложения из командной строки
После успешной компиляции создастся файл Console.class. Если такой файл не создался, то, значит, код содержит ошибки, которые необходимо устранить и ещё раз скомпилировать программу.
Для запуска программы их консоли выполните команду java.exe Console
Описание слайда:
Введение в язык Java. Компиляция и запуск приложения из командной строки После успешной компиляции создастся файл Console.class. Если такой файл не создался, то, значит, код содержит ошибки, которые необходимо устранить и ещё раз скомпилировать программу. Для запуска программы их консоли выполните команду java.exe Console

Слайд 11





Введение в язык Java. Работа с аргументами командной строки
Создайте файл ConsoleArguments.java со следующим содержанием:
Скомпилируйте приложение и запустите его с помощью следующей командной строки java.exe CommandArg first second 23 56 23,9
Описание слайда:
Введение в язык Java. Работа с аргументами командной строки Создайте файл ConsoleArguments.java со следующим содержанием: Скомпилируйте приложение и запустите его с помощью следующей командной строки java.exe CommandArg first second 23 56 23,9

Слайд 12





Введение в язык Java. Консоль. Простейшие примеры
Взаимодействие с консолью с помощью потока System.in представляет собой один из простейших способов передачи информации в приложение. 
В следующем примере рассматривается ввод информации в виде символа из потока ввода, связанного с консолью, и последующего вывода на консоль символа и его числового кода.
Описание слайда:
Введение в язык Java. Консоль. Простейшие примеры Взаимодействие с консолью с помощью потока System.in представляет собой один из простейших способов передачи информации в приложение. В следующем примере рассматривается ввод информации в виде символа из потока ввода, связанного с консолью, и последующего вывода на консоль символа и его числового кода.

Слайд 13





Введение в язык Java. Консоль. Простейшие примеры. Example 3
Результат:
Описание слайда:
Введение в язык Java. Консоль. Простейшие примеры. Example 3 Результат:

Слайд 14





Введение в язык Java. Консоль. Простейшие примеры. Example 4
Результат:
Описание слайда:
Введение в язык Java. Консоль. Простейшие примеры. Example 4 Результат:

Слайд 15





Введение в язык Java. Консоль. Простейшие примеры. Example 5
Описание слайда:
Введение в язык Java. Консоль. Простейшие примеры. Example 5

Слайд 16





Введение в язык Java. Консоль. Простейшие примеры. Example 5
Результат:
Описание слайда:
Введение в язык Java. Консоль. Простейшие примеры. Example 5 Результат:

Слайд 17





Введение в язык Java. Консоль. Простейшие примеры. Example 6
Описание слайда:
Введение в язык Java. Консоль. Простейшие примеры. Example 6

Слайд 18





Введение в язык Java. Консоль. Простейшие примеры. Example 6
Результат:
Описание слайда:
Введение в язык Java. Консоль. Простейшие примеры. Example 6 Результат:

Слайд 19





Введение в язык Java. Консоль. Простейшие примеры. Example 7
Результат:
Описание слайда:
Введение в язык Java. Консоль. Простейшие примеры. Example 7 Результат:

Слайд 20





Типы данных, переменные, операторы
Описание слайда:
Типы данных, переменные, операторы

Слайд 21





Типы данных, переменные, операторы. Примитивные и ссылочные типы
Язык Java является объектно-ориентированным, но существуют типы данных (простые/примитивные), не являющиеся объектами.
Фактор производительности 
Простые типы делятся на 4 группы:
целые: int, byte, short, long, 
числа с плавающей точкой: float, double
символы: char
логические: boolean
Введение в синтаксис языка классов позволяет создавать свои типы, получившие название ссылочных.
Описание слайда:
Типы данных, переменные, операторы. Примитивные и ссылочные типы Язык Java является объектно-ориентированным, но существуют типы данных (простые/примитивные), не являющиеся объектами. Фактор производительности Простые типы делятся на 4 группы: целые: int, byte, short, long, числа с плавающей точкой: float, double символы: char логические: boolean Введение в синтаксис языка классов позволяет создавать свои типы, получившие название ссылочных.

Слайд 22





Типы данных, переменные, операторы. Примитивные типы
Описание слайда:
Типы данных, переменные, операторы. Примитивные типы

Слайд 23





Типы данных, переменные, операторы. Размер типа данных. Значения по умолчанию
Размер одинаков для всех платформ; за счет этого становится возможной переносимость кода
Размер boolean неопределен. Указано, что он может принимать значения true или false
Описание слайда:
Типы данных, переменные, операторы. Размер типа данных. Значения по умолчанию Размер одинаков для всех платформ; за счет этого становится возможной переносимость кода Размер boolean неопределен. Указано, что он может принимать значения true или false

Слайд 24





Типы данных, переменные, операторы. Размер типа данных. Значения по умолчанию
Неинициализированная явно переменная (член класса) примитивного типа принимает значение в момент создания
Описание слайда:
Типы данных, переменные, операторы. Размер типа данных. Значения по умолчанию Неинициализированная явно переменная (член класса) примитивного типа принимает значение в момент создания

Слайд 25





Типы данных, переменные, операторы. Переменные. Объявление переменных
Характеристики.
Основное место для хранения данных
Должны быть явно объявлены
Каждая переменная имеет тип, идентификатор и область видимости
Определяются для класса, для экземпляра и внутри метода
Объявление переменных.
Может быть объявлена в любом месте блока кода
Должна быть объявлена перед использованием
Обычно переменные объявляются в начале блока
Область видимости определяется блоком
Необходимо инициализировать переменные перед использованием
Переменные простых типов инициализируются автоматически
Описание слайда:
Типы данных, переменные, операторы. Переменные. Объявление переменных Характеристики. Основное место для хранения данных Должны быть явно объявлены Каждая переменная имеет тип, идентификатор и область видимости Определяются для класса, для экземпляра и внутри метода Объявление переменных. Может быть объявлена в любом месте блока кода Должна быть объявлена перед использованием Обычно переменные объявляются в начале блока Область видимости определяется блоком Необходимо инициализировать переменные перед использованием Переменные простых типов инициализируются автоматически

Слайд 26





Типы данных, переменные, операторы. Переменные. Объявление переменных
Основная форма объявления
тип идентификатор [ = значение];
При объявлении переменные могут быть проинициализированы
Описание слайда:
Типы данных, переменные, операторы. Переменные. Объявление переменных Основная форма объявления тип идентификатор [ = значение]; При объявлении переменные могут быть проинициализированы

Слайд 27





Типы данных, переменные, операторы. Переменные. Объявление переменных
Java не позволяет присваивать переменной значение более длинного типа, если только это не константы. Исключение составляют операторы инкремента, декремента и операторы +=, =, *=, /=.
В именах переменных не могут использоваться символы арифметических и логических операторов, а также символ ‘#’. Применение символов ‘$’ и ‘_’ допустимо, в том числе и в первой позиции имени.
Описание слайда:
Типы данных, переменные, операторы. Переменные. Объявление переменных Java не позволяет присваивать переменной значение более длинного типа, если только это не константы. Исключение составляют операторы инкремента, декремента и операторы +=, =, *=, /=. В именах переменных не могут использоваться символы арифметических и логических операторов, а также символ ‘#’. Применение символов ‘$’ и ‘_’ допустимо, в том числе и в первой позиции имени.

Слайд 28





Типы данных, переменные, операторы. Ключевые и зарезервированные языка Java
Описание слайда:
Типы данных, переменные, операторы. Ключевые и зарезервированные языка Java

Слайд 29





Типы данных, переменные, операторы. Ключевые и зарезервированные языка Java
Кроме ключевых слов, в Java существуют три литерала: null, true, false, не относящиеся к ключевым и зарезервированным словам. Зарезервированные слова: const, goto.
Описание слайда:
Типы данных, переменные, операторы. Ключевые и зарезервированные языка Java Кроме ключевых слов, в Java существуют три литерала: null, true, false, не относящиеся к ключевым и зарезервированным словам. Зарезервированные слова: const, goto.

Слайд 30





Типы данных, переменные, операторы. Литералы
Описание слайда:
Типы данных, переменные, операторы. Литералы

Слайд 31





Типы данных, переменные, операторы. Преобразования типов
Java запрещает смешивать в выражениях величины разных типов, однако при числовых операциях такое часто бывает необходимо. Различают повышающее (разрешенное, неявное) преобразование и понижающее приведение типа.
Повышающее преобразование осуществляется автоматически по следующему правилу. Серыми стрелками обозначены преобразования, при которых может произойти потеря точности.
Описание слайда:
Типы данных, переменные, операторы. Преобразования типов Java запрещает смешивать в выражениях величины разных типов, однако при числовых операциях такое часто бывает необходимо. Различают повышающее (разрешенное, неявное) преобразование и понижающее приведение типа. Повышающее преобразование осуществляется автоматически по следующему правилу. Серыми стрелками обозначены преобразования, при которых может произойти потеря точности.

Слайд 32





Типы данных, переменные, операторы. Расширяющее и сужающее преобразование типов
Расширяющее преобразование. Результирующий тип имеет больший диапазон значений, чем исходный тип:
Сужающее преобразование. . Результирующий тип имеет меньший диапазон значений, чем исходный тип.
Описание слайда:
Типы данных, переменные, операторы. Расширяющее и сужающее преобразование типов Расширяющее преобразование. Результирующий тип имеет больший диапазон значений, чем исходный тип: Сужающее преобразование. . Результирующий тип имеет меньший диапазон значений, чем исходный тип.

Слайд 33





Типы данных, переменные, операторы. Потеря точности при преобразовании типов. Example 8
Описание слайда:
Типы данных, переменные, операторы. Потеря точности при преобразовании типов. Example 8

Слайд 34





Типы данных, переменные, операторы. Потеря точности при преобразовании типов. Example 8
Результат:
Описание слайда:
Типы данных, переменные, операторы. Потеря точности при преобразовании типов. Example 8 Результат:

Слайд 35





Типы данных, переменные, операторы. Классы-оболочки
Кроме базовых типов данных широко используются соответствующие классы (wrapper классы): Boolean, Character, Integer, Byte, Short, Long, Float, Double. Объекты этих классов могут хранить те же значения, что и соответствующие им базовые типы.
Объекты этих классов представляют ссылки на участки динамической памяти, в которой хранятся их значения  и являются классами оболочками для значений базовых типов. Указанные классы являются наследниками абстрактного класса Number и реализуют интерфейс Comparable, представляющий собой интерфейс для работы со всеми скалярными типами.
Объекты этих классов являются константными
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки Кроме базовых типов данных широко используются соответствующие классы (wrapper классы): Boolean, Character, Integer, Byte, Short, Long, Float, Double. Объекты этих классов могут хранить те же значения, что и соответствующие им базовые типы. Объекты этих классов представляют ссылки на участки динамической памяти, в которой хранятся их значения и являются классами оболочками для значений базовых типов. Указанные классы являются наследниками абстрактного класса Number и реализуют интерфейс Comparable, представляющий собой интерфейс для работы со всеми скалярными типами. Объекты этих классов являются константными

Слайд 36





Типы данных, переменные, операторы. Классы-оболочки
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки

Слайд 37





Типы данных, переменные, операторы. Классы-оболочки. Example 9
Результат:
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки. Example 9 Результат:

Слайд 38





Типы данных, переменные, операторы. Классы-оболочки
Если требуется создать метод, изменяющий свои числовые параметры, необходимо воспользоваться классами вспомогательных типов из пакета org.omg.CORBA
IntHolder, BooleanHolder и др.
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки Если требуется создать метод, изменяющий свои числовые параметры, необходимо воспользоваться классами вспомогательных типов из пакета org.omg.CORBA IntHolder, BooleanHolder и др.

Слайд 39





Типы данных, переменные, операторы. Классы-оболочки. Example 10
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки. Example 10

Слайд 40





Типы данных, переменные, операторы. Классы-оболочки. Example 10
Результат:
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки. Example 10 Результат:

Слайд 41





Типы данных, переменные, операторы. Классы-оболочки
Класс Character не наследуется от Number, так как ему нет необходимости поддерживать интерфейс классов, предназначенных для хранения результатов арифметических операций. Класс Character имеет целый ряд специфических методов для обработки символьной информации. У этого класса, в отличие от других классов оболочек, не существует конструктора с параметром типа String.
digit(char ch, in radix) - переводит цифру ch системы счисления с основанием radix в ее числовое значение типа int. 
forDigit(int digit, int radix)  - производит обратное преобразование целого числа digit в соответствующую цифру (тип char) в системе счисления с основанием radix.
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки Класс Character не наследуется от Number, так как ему нет необходимости поддерживать интерфейс классов, предназначенных для хранения результатов арифметических операций. Класс Character имеет целый ряд специфических методов для обработки символьной информации. У этого класса, в отличие от других классов оболочек, не существует конструктора с параметром типа String. digit(char ch, in radix) - переводит цифру ch системы счисления с основанием radix в ее числовое значение типа int. forDigit(int digit, int radix) - производит обратное преобразование целого числа digit в соответствующую цифру (тип char) в системе счисления с основанием radix.

Слайд 42





Типы данных, переменные, операторы. Классы-оболочки
Основание системы счисления должно находиться в диапазоне от Character.MIN_RADIX до Character.MAX_RADIX. 
Метод toString() переводит символ, содержащийся в классе, в строку с тем же символом. 
Статические методы toLowerCase(), touppercase(), toTitieCase() возвращают символ, содержащийся в классе, в указанном регистре. Последний из этих методов предназначен для правильного перевода в верхний регистр четырех кодов Unicode, не выражающихся одним символом. 
Множество статических логических методов проверяют различные характеристики символа, переданного в качестве аргумента метода.
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки Основание системы счисления должно находиться в диапазоне от Character.MIN_RADIX до Character.MAX_RADIX. Метод toString() переводит символ, содержащийся в классе, в строку с тем же символом. Статические методы toLowerCase(), touppercase(), toTitieCase() возвращают символ, содержащийся в классе, в указанном регистре. Последний из этих методов предназначен для правильного перевода в верхний регистр четырех кодов Unicode, не выражающихся одним символом. Множество статических логических методов проверяют различные характеристики символа, переданного в качестве аргумента метода.

Слайд 43





Типы данных, переменные, операторы. Классы-оболочки. Example 11
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки. Example 11

Слайд 44





Типы данных, переменные, операторы. Классы-оболочки. Example 11
Результат:
Описание слайда:
Типы данных, переменные, операторы. Классы-оболочки. Example 11 Результат:

Слайд 45





Типы данных, переменные, операторы. Big-классы
Java включает два класса для работы с высокоточной арифметикой: BigInteger и BigDecimal, которые поддерживают целые числа и числа с фиксированной точкой произвольной точности.
Описание слайда:
Типы данных, переменные, операторы. Big-классы Java включает два класса для работы с высокоточной арифметикой: BigInteger и BigDecimal, которые поддерживают целые числа и числа с фиксированной точкой произвольной точности.

Слайд 46





Типы данных, переменные, операторы. Big-классы. Example 12
Результат:
Описание слайда:
Типы данных, переменные, операторы. Big-классы. Example 12 Результат:

Слайд 47





Типы данных, переменные, операторы. Упаковка/распаковка
В версии 5.0 введен процесс автоматической инкапсуляции данных базовых типов в соответствующие объекты оболочки и обратно (автоупаковка). При этом нет необходимости в создании соответствующего объекта с использованием оператора new.
Автораспаковка – процесс извлечения из объекта-оболочки значения базового типа. Вызовы таких методов, как intValue(), doubleValue() становятся излишними.
Описание слайда:
Типы данных, переменные, операторы. Упаковка/распаковка В версии 5.0 введен процесс автоматической инкапсуляции данных базовых типов в соответствующие объекты оболочки и обратно (автоупаковка). При этом нет необходимости в создании соответствующего объекта с использованием оператора new. Автораспаковка – процесс извлечения из объекта-оболочки значения базового типа. Вызовы таких методов, как intValue(), doubleValue() становятся излишними.

Слайд 48





Типы данных, переменные, операторы. Упаковка/распаковка
Допускается участие объектов в арифметических операциях, однако не следует этим злоупотреблять, поскольку упаковка/распаковка является ресурсоемким процессом.
Описание слайда:
Типы данных, переменные, операторы. Упаковка/распаковка Допускается участие объектов в арифметических операциях, однако не следует этим злоупотреблять, поскольку упаковка/распаковка является ресурсоемким процессом.

Слайд 49





Типы данных, переменные, операторы. Упаковка/распаковка
Несмотря на то, что значения базовых типов могут быть присвоены объектам классов-оболочек, сравнение объектов между собой происходит по ссылкам.
Метод equals() сравнивает не значения объектных ссылок, а значения объектов, на которые установлены эти ссылки. Поэтому вызов oa.equals(ob) возвращает значение true.
Значение базового типа может быть передано в метод equals(). Однако ссылка на базовый тип не может вызывать методы.
Описание слайда:
Типы данных, переменные, операторы. Упаковка/распаковка Несмотря на то, что значения базовых типов могут быть присвоены объектам классов-оболочек, сравнение объектов между собой происходит по ссылкам. Метод equals() сравнивает не значения объектных ссылок, а значения объектов, на которые установлены эти ссылки. Поэтому вызов oa.equals(ob) возвращает значение true. Значение базового типа может быть передано в метод equals(). Однако ссылка на базовый тип не может вызывать методы.

Слайд 50





Типы данных, переменные, операторы. Упаковка/распаковка. Example 12
Результат:
Описание слайда:
Типы данных, переменные, операторы. Упаковка/распаковка. Example 12 Результат:

Слайд 51





Типы данных, переменные, операторы. Упаковка/распаковка
При инициализации объекта класса-оболочки значением базового типа преобразование типов необходимо указывать явно.
Возможно создавать объекты и массивы, сохраняющие различные базовые типы без взаимных преобразований, с помощью ссылки на класс Number.
При автоупаковке значения базового типа возможны ситуации с появлением некорректных значений и непроверяемых ошибок.
Описание слайда:
Типы данных, переменные, операторы. Упаковка/распаковка При инициализации объекта класса-оболочки значением базового типа преобразование типов необходимо указывать явно. Возможно создавать объекты и массивы, сохраняющие различные базовые типы без взаимных преобразований, с помощью ссылки на класс Number. При автоупаковке значения базового типа возможны ситуации с появлением некорректных значений и непроверяемых ошибок.

Слайд 52





Типы данных, переменные, операторы. Класс Math
Для организации математических вычислений в Java существует класс Math.
Описание слайда:
Типы данных, переменные, операторы. Класс Math Для организации математических вычислений в Java существует класс Math.

Слайд 53





Типы данных, переменные, операторы. Статический импорт
Ключевое слово import с последующим ключевым словом static используется для импорта статических полей и методов классов, в результате чего отпадает необходимость в использовании имен классов перед ними.
Описание слайда:
Типы данных, переменные, операторы. Статический импорт Ключевое слово import с последующим ключевым словом static используется для импорта статических полей и методов классов, в результате чего отпадает необходимость в использовании имен классов перед ними.

Слайд 54





Типы данных, переменные, операторы. Статический импорт. Example 13
Результат:
Описание слайда:
Типы данных, переменные, операторы. Статический импорт. Example 13 Результат:

Слайд 55





Типы данных, переменные, операторы. Операторы
Арифметические операторы
Описание слайда:
Типы данных, переменные, операторы. Операторы Арифметические операторы

Слайд 56





Типы данных, переменные, операторы. Операторы
Битовые операторы
Описание слайда:
Типы данных, переменные, операторы. Операторы Битовые операторы

Слайд 57





Типы данных, переменные, операторы. Операторы
Операторы отношения
Применяются для сравнения символов, целых и вещественных чисел, а также для сравнения ссылок при работе с объектами.
Логические операторы
Описание слайда:
Типы данных, переменные, операторы. Операторы Операторы отношения Применяются для сравнения символов, целых и вещественных чисел, а также для сравнения ссылок при работе с объектами. Логические операторы

Слайд 58





Типы данных, переменные, операторы. Операторы
К операторам относится также оператор определения принадлежности типу instanceof, оператор [ ] и тернарный оператор ?: (if-then-else).
	
Логические операции выполняются над значениями типа boolean (true или false). 
Оператор instanceof возвращает значение true, если объект является экземпляром данного класса.
Описание слайда:
Типы данных, переменные, операторы. Операторы К операторам относится также оператор определения принадлежности типу instanceof, оператор [ ] и тернарный оператор ?: (if-then-else). Логические операции выполняются над значениями типа boolean (true или false). Оператор instanceof возвращает значение true, если объект является экземпляром данного класса.

Слайд 59





Типы данных, переменные, операторы. Операторы
Операции над целыми числами: +, , *, %, /, ++,-- и битовые операции &, |, ^, ~  аналогичны операциям большинства языков программирования.
Деление на ноль целочисленного типа вызывает исключительную ситуацию, переполнение не контролируется.
Описание слайда:
Типы данных, переменные, операторы. Операторы Операции над целыми числами: +, , *, %, /, ++,-- и битовые операции &, |, ^, ~ аналогичны операциям большинства языков программирования. Деление на ноль целочисленного типа вызывает исключительную ситуацию, переполнение не контролируется.

Слайд 60





Типы данных, переменные, операторы. Операторы
Операции над числами с плавающей точкой практически те же, что и в других языках, но по стандарту IEEE 754 введены понятие бесконечности +Infinity и –Infinity и значение NaN (Not a Number). Результат деления положительного числа на 0 равен положительной бесконечности, отрицательного – отрицательной бесконечности. Вычисление квадратного корня из отрицательного числа или деление 0/0 – не число. Проверить, что какой-то результат равен не числу можно с помощью методов Double.isNan(<arg>) или Float.isNaN(<arg>), возвращающих значение типа boolean.
Описание слайда:
Типы данных, переменные, операторы. Операторы Операции над числами с плавающей точкой практически те же, что и в других языках, но по стандарту IEEE 754 введены понятие бесконечности +Infinity и –Infinity и значение NaN (Not a Number). Результат деления положительного числа на 0 равен положительной бесконечности, отрицательного – отрицательной бесконечности. Вычисление квадратного корня из отрицательного числа или деление 0/0 – не число. Проверить, что какой-то результат равен не числу можно с помощью методов Double.isNan(<arg>) или Float.isNaN(<arg>), возвращающих значение типа boolean.

Слайд 61





Типы данных, переменные, операторы. Приоритет операций
Описание слайда:
Типы данных, переменные, операторы. Приоритет операций

Слайд 62





Типы данных, переменные, операторы. Вычисления с плавающей точкой
Все вычисления, которые проводятся над числами с плавающей точкой следуют стандарту IEEE 754. В Java есть три специальных числа с плавающей точкой
Положительная бесконечность
Отрицательная бесконечность
Не число 
В языке Java существуют константы 
Double.POSITIVE_INFINITY;
Float.POSITIVE_INFINITY;
Double.NEGATIVE_INFINITY; 
Float.NEGATIVE_INFINITY;
Double.NaN; 
Float.NaN;
Описание слайда:
Типы данных, переменные, операторы. Вычисления с плавающей точкой Все вычисления, которые проводятся над числами с плавающей точкой следуют стандарту IEEE 754. В Java есть три специальных числа с плавающей точкой Положительная бесконечность Отрицательная бесконечность Не число В языке Java существуют константы Double.POSITIVE_INFINITY; Float.POSITIVE_INFINITY; Double.NEGATIVE_INFINITY; Float.NEGATIVE_INFINITY; Double.NaN; Float.NaN;

Слайд 63





Типы данных, переменные, операторы. Вычисления с плавающей точкой. Example 14
Результат:
Описание слайда:
Типы данных, переменные, операторы. Вычисления с плавающей точкой. Example 14 Результат:

Слайд 64





Типы данных, переменные, операторы. Операторы управления
Оператор if:
Позволяет условное выполнение оператора или условный выбор двух операторов, выполняя один или другой, но не оба сразу.
Описание слайда:
Типы данных, переменные, операторы. Операторы управления Оператор if: Позволяет условное выполнение оператора или условный выбор двух операторов, выполняя один или другой, но не оба сразу.

Слайд 65





Типы данных, переменные, операторы. Операторы управления
Циклы:
Циклы выполняются, пока  булевское выражение boolexp равно true. 
Оператор прерывания цикла break и оператор прерывания итерации цикла continue,  можно использовать с меткой, для обеспечения выхода из вложенных циклов.
Описание слайда:
Типы данных, переменные, операторы. Операторы управления Циклы: Циклы выполняются, пока булевское выражение boolexp равно true. Оператор прерывания цикла break и оператор прерывания итерации цикла continue, можно использовать с меткой, для обеспечения выхода из вложенных циклов.

Слайд 66





Типы данных, переменные, операторы. Операторы управления
break – применяется для выхода из цикла, оператора switch
continue - применяется для перехода к следующей итерации цикла
В языке Java расширились возможности оператора прерывания цикла break и оператора прерывания итерации цикла continue, которые можно использовать с меткой.
Описание слайда:
Типы данных, переменные, операторы. Операторы управления break – применяется для выхода из цикла, оператора switch continue - применяется для перехода к следующей итерации цикла В языке Java расширились возможности оператора прерывания цикла break и оператора прерывания итерации цикла continue, которые можно использовать с меткой.

Слайд 67





Типы данных, переменные, операторы. Операторы управления
Проверка условия для всех циклов выполняется только один раз за одну итерацию, для циклов for и while – перед итерацией, для цикла do/while – по окончании итерации.
Цикл for следует использовать при необходимости выполнения алгоритма строго определенное количество раз. Цикл while используется в случае, когда неизвестно число итераций для достижения необходимого результата, например, поиск необходимого значения в массиве или коллекции. Этот цикл применяется для организации бесконечных циклов в виде while(true).
Описание слайда:
Типы данных, переменные, операторы. Операторы управления Проверка условия для всех циклов выполняется только один раз за одну итерацию, для циклов for и while – перед итерацией, для цикла do/while – по окончании итерации. Цикл for следует использовать при необходимости выполнения алгоритма строго определенное количество раз. Цикл while используется в случае, когда неизвестно число итераций для достижения необходимого результата, например, поиск необходимого значения в массиве или коллекции. Этот цикл применяется для организации бесконечных циклов в виде while(true).

Слайд 68





Типы данных, переменные, операторы. Операторы управления
Для цикла for не рекомендуется в цикле изменять индекс цикла.
Условие завершения цикла должно быть очевидным, чтобы цикл не «сорвался» в бесконечный цикл.
Для индексов следует применять осмысленные имена.
Циклы не должны быть слишком длинными. Такой цикл претендует на выделение в отдельный метод.
Вложенность циклов не должна превышать трех.
Описание слайда:
Типы данных, переменные, операторы. Операторы управления Для цикла for не рекомендуется в цикле изменять индекс цикла. Условие завершения цикла должно быть очевидным, чтобы цикл не «сорвался» в бесконечный цикл. Для индексов следует применять осмысленные имена. Циклы не должны быть слишком длинными. Такой цикл претендует на выделение в отдельный метод. Вложенность циклов не должна превышать трех.

Слайд 69





Типы данных, переменные, операторы. Операторы управления
Оператор switch:
Оператор switch передает управление одному из нескольких операторов в зависимости от  значения выражения.
Описание слайда:
Типы данных, переменные, операторы. Операторы управления Оператор switch: Оператор switch передает управление одному из нескольких операторов в зависимости от значения выражения.

Слайд 70





Типы данных, переменные, операторы. Instanceof
Оператор instanceof возвращает значение true, если объект является экземпляром данного типа. Например, для иерархии наследования:
Описание слайда:
Типы данных, переменные, операторы. Instanceof Оператор instanceof возвращает значение true, если объект является экземпляром данного типа. Например, для иерархии наследования:

Слайд 71





Типы данных, переменные, операторы. Instanceof
Объект подкласса может быть использован всюду, где используется объект суперкласса
Результатом действия оператора instanceof будет истина, если объект является объектом типа c с которым идет поверка или одного из его подклассов, но не наоборот.
Описание слайда:
Типы данных, переменные, операторы. Instanceof Объект подкласса может быть использован всюду, где используется объект суперкласса Результатом действия оператора instanceof будет истина, если объект является объектом типа c с которым идет поверка или одного из его подклассов, но не наоборот.

Слайд 72





Типы данных, переменные, операторы. Instanceof. Example 15
Описание слайда:
Типы данных, переменные, операторы. Instanceof. Example 15

Слайд 73





Типы данных, переменные, операторы. Instanceof. Example 15
Результат:
Описание слайда:
Типы данных, переменные, операторы. Instanceof. Example 15 Результат:

Слайд 74





Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками.
Создание переменной ссылочного типа:
Для класса String можно использовать упрощенный синтаксис
Описание слайда:
Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками. Создание переменной ссылочного типа: Для класса String можно использовать упрощенный синтаксис

Слайд 75





Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками.
Знак + применяется для объединения двух строк.
Если в строковом выражении применяется нестроковый аргумент, то он преобразуется к строке автоматически.
Чтобы сравнить на равенство две строки необходимо воспользоваться методом equals()
Длина строки определяется с помощью метода length()        -  int len = str.length();
Описание слайда:
Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками. Знак + применяется для объединения двух строк. Если в строковом выражении применяется нестроковый аргумент, то он преобразуется к строке автоматически. Чтобы сравнить на равенство две строки необходимо воспользоваться методом equals() Длина строки определяется с помощью метода length() - int len = str.length();

Слайд 76





Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками. Example 16
Результат:
Описание слайда:
Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками. Example 16 Результат:

Слайд 77





Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками
Перевести строковое значение в величину типа int или double можно с помощью методов parseInt() и parseDouble() классов Integer и Double. Обратное преобразование возможно при использовании метода valueOf() класса String. Кроме того, любое значение можно преобразовать в строку путем конкатенации его (+) с пустой строкой (“”).
Описание слайда:
Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками Перевести строковое значение в величину типа int или double можно с помощью методов parseInt() и parseDouble() классов Integer и Double. Обратное преобразование возможно при использовании метода valueOf() класса String. Кроме того, любое значение можно преобразовать в строку путем конкатенации его (+) с пустой строкой (“”).

Слайд 78





Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками. Example 17
Результат:
Описание слайда:
Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками. Example 17 Результат:

Слайд 79





Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками. Example 18
Для преобразования целого числа в десятичную, двоичную, шестнадцатеричную и восьмеричную строки используются методы toString(), toBinaryString(), toHexString() и toOctalString().
Описание слайда:
Типы данных, переменные, операторы. Ссылочные типы данных. Базовые элементы работы со строками. Example 18 Для преобразования целого числа в десятичную, двоичную, шестнадцатеричную и восьмеричную строки используются методы toString(), toBinaryString(), toHexString() и toOctalString().

Слайд 80





Простейшие классы и объекты
Описание слайда:
Простейшие классы и объекты

Слайд 81





Простейшие классы и объекты. Определения
Объект – некоторая КОНКРЕТНАЯ сущность моделируемой предметной области
Класс – шаблон или АБСТРАКЦИЯ сущности предметной области
Описание слайда:
Простейшие классы и объекты. Определения Объект – некоторая КОНКРЕТНАЯ сущность моделируемой предметной области Класс – шаблон или АБСТРАКЦИЯ сущности предметной области

Слайд 82





Простейшие классы и объекты. Определения
Классом называется описание совокупности объектов с общими атрибутами, методами, отношениями и семантикой.

Классы определяют структуру и поведение некоторого набора элементов предметной области, для которой разрабатывается программная модель.

Каждый класс имеет свое имя, отличающее его от других классов, и относится к определенному пакету. Имя класса в пакете должно быть уникальным. Физически пакет представляет собой каталог, в который помещаются программные файлы, содержащие реализацию классов.
Классы позволяют разбить поведение сложных систем на простое взаимодействие взаимосвязанных объектов.
Описание слайда:
Простейшие классы и объекты. Определения Классом называется описание совокупности объектов с общими атрибутами, методами, отношениями и семантикой. Классы определяют структуру и поведение некоторого набора элементов предметной области, для которой разрабатывается программная модель. Каждый класс имеет свое имя, отличающее его от других классов, и относится к определенному пакету. Имя класса в пакете должно быть уникальным. Физически пакет представляет собой каталог, в который помещаются программные файлы, содержащие реализацию классов. Классы позволяют разбить поведение сложных систем на простое взаимодействие взаимосвязанных объектов.

Слайд 83





Простейшие классы и объекты. Свойства и методы класса
Свойства классов
Уникальные характеристики, которые необходимы при моделировании предметной области
ОБЪЕКТЫ различаются значениями свойств
Свойства отражают состояние объекта
Методы классов
Метод отражает ПОВЕДЕНИЕ объектов
Выполнение методов, как правило, меняет значение свойств
Поведение объекта может меняться в зависимости от состояния
Описание слайда:
Простейшие классы и объекты. Свойства и методы класса Свойства классов Уникальные характеристики, которые необходимы при моделировании предметной области ОБЪЕКТЫ различаются значениями свойств Свойства отражают состояние объекта Методы классов Метод отражает ПОВЕДЕНИЕ объектов Выполнение методов, как правило, меняет значение свойств Поведение объекта может меняться в зависимости от состояния

Слайд 84





Простейшие классы и объекты. Свойства и методы класса
Определение класса включает:
Модификатор доступа
Ключевое слово class
Свойства класса
Конструкторы
Методы
Статические свойства
Статические методы
Описание слайда:
Простейшие классы и объекты. Свойства и методы класса Определение класса включает: Модификатор доступа Ключевое слово class Свойства класса Конструкторы Методы Статические свойства Статические методы

Слайд 85





Простейшие классы и объекты. Свойства и методы класса
Все функции определяются внутри классов и называются методами.
Методы определяются только внутри класса. Указывается:
Модификатор доступа
Слово static
Тип возвращаемого значения
Аргументы

Невозможно создать метод, не являющийся методом класса или объявить метод вне класса.
Описание слайда:
Простейшие классы и объекты. Свойства и методы класса Все функции определяются внутри классов и называются методами. Методы определяются только внутри класса. Указывается: Модификатор доступа Слово static Тип возвращаемого значения Аргументы Невозможно создать метод, не являющийся методом класса или объявить метод вне класса.

Слайд 86





Простейшие классы и объекты. Свойства и методы класса
Объявление класса имеет вид: 

	[спецификаторы] class имя_класса 
		   [extends суперкласс]  [implements список_интерфейсов]{
				/*определение класса*/
	}


Создание объекта имеет вид: 

	имя_класса имя_объекта= new конструктор_класса([аргументы]);
Описание слайда:
Простейшие классы и объекты. Свойства и методы класса Объявление класса имеет вид: [спецификаторы] class имя_класса [extends суперкласс] [implements список_интерфейсов]{ /*определение класса*/ } Создание объекта имеет вид: имя_класса имя_объекта= new конструктор_класса([аргументы]);

Слайд 87





Простейшие классы и объекты. Свойства и методы класса. Блоки кода
Блоки кода обрамляются в фигурные скобки “{“   “}”
Охватывают определение класса
Определения методов
Логически связанные разделы кода
Описание слайда:
Простейшие классы и объекты. Свойства и методы класса. Блоки кода Блоки кода обрамляются в фигурные скобки “{“ “}” Охватывают определение класса Определения методов Логически связанные разделы кода

Слайд 88





Простейшие классы и объекты. Атрибуты доступа
Спецификатор класса может быть:
 public (класс доступен объектам данного пакета и вне пакета).
 final (класс не может иметь подклассов).
 abstract (класс содержит абстрактные методы, объекты такого класса могут создавать только подклассы). 
По умолчанию спецификатор доступа устанавливается в friendly (класс доступен в данном пакете). Данное слово при объявлении вообще не используется и не является ключевым словом языка, мы его используем для обозначения.
Описание слайда:
Простейшие классы и объекты. Атрибуты доступа Спецификатор класса может быть: public (класс доступен объектам данного пакета и вне пакета). final (класс не может иметь подклассов). abstract (класс содержит абстрактные методы, объекты такого класса могут создавать только подклассы). По умолчанию спецификатор доступа устанавливается в friendly (класс доступен в данном пакете). Данное слово при объявлении вообще не используется и не является ключевым словом языка, мы его используем для обозначения.

Слайд 89





Простейшие классы и объекты. Конструкторы
Конструктор – это метод, который автоматически вызывается при создании объекта класса и выполняет действия только по инициализации объекта;
Конструктор имеет то же имя, что и класс; 
Вызывается не по имени, а только вместе с ключевым словом new при создании экземпляра класса;
Конструктор не возвращает значение, но может иметь параметры и быть перегружаемым.
Описание слайда:
Простейшие классы и объекты. Конструкторы Конструктор – это метод, который автоматически вызывается при создании объекта класса и выполняет действия только по инициализации объекта; Конструктор имеет то же имя, что и класс; Вызывается не по имени, а только вместе с ключевым словом new при создании экземпляра класса; Конструктор не возвращает значение, но может иметь параметры и быть перегружаемым.

Слайд 90





Простейшие классы и объекты. Конструкторы. Example 19
Описание слайда:
Простейшие классы и объекты. Конструкторы. Example 19

Слайд 91





Простейшие классы и объекты. Конструкторы. Example 19
Описание слайда:
Простейшие классы и объекты. Конструкторы. Example 19

Слайд 92





Простейшие классы и объекты. Пакеты
Пакеты – это контейнеры классов, которые используются для разделения пространства имен классов. Пакет в Java создается включением в текст программы первым оператором ключевого слова package.
package имя_пакета;
package имя_пакета.имя_подпакета.имя_подпакета;
Для хранения пакетов используются каталоги файловой системы.
Описание слайда:
Простейшие классы и объекты. Пакеты Пакеты – это контейнеры классов, которые используются для разделения пространства имен классов. Пакет в Java создается включением в текст программы первым оператором ключевого слова package. package имя_пакета; package имя_пакета.имя_подпакета.имя_подпакета; Для хранения пакетов используются каталоги файловой системы.

Слайд 93





Простейшие классы и объекты. Пакеты
При компиляции поиск  пакетов осуществляется в:
 рабочем каталоге
используя параметр переменной среды CLASSPATH
указывая местонахождение пакета параметром компилятора -classpath
Описание слайда:
Простейшие классы и объекты. Пакеты При компиляции поиск пакетов осуществляется в: рабочем каталоге используя параметр переменной среды CLASSPATH указывая местонахождение пакета параметром компилятора -classpath

Слайд 94





Простейшие классы и объекты. Пакеты
Пакеты регулируют права доступа к классам и подклассам.
Сущности (интерфейсы, классы, методы, поля), помеченные ключевым словом public, могут использоваться любым классом.
Закрытые сущности могут использоваться только определившим их классом. 
Если ни один модификатор доступа неуказан, то сущность (т.е. класс, метод или переменная) является доступной всем методам в том же самом пакете.
Описание слайда:
Простейшие классы и объекты. Пакеты Пакеты регулируют права доступа к классам и подклассам. Сущности (интерфейсы, классы, методы, поля), помеченные ключевым словом public, могут использоваться любым классом. Закрытые сущности могут использоваться только определившим их классом. Если ни один модификатор доступа неуказан, то сущность (т.е. класс, метод или переменная) является доступной всем методам в том же самом пакете.

Слайд 95





Простейшие классы и объекты. Пакеты
Для подключения пакета используется ключевое слово import.
import имя_пакета.имя_подпакета.*;
import имя_пакета.имя_подпакета.имя_подпакета.имя_класса;
Описание слайда:
Простейшие классы и объекты. Пакеты Для подключения пакета используется ключевое слово import. import имя_пакета.имя_подпакета.*; import имя_пакета.имя_подпакета.имя_подпакета.имя_класса;

Слайд 96





Простейшие классы и объекты. Пакеты. Example 20
Описание слайда:
Простейшие классы и объекты. Пакеты. Example 20

Слайд 97





JaVa beans
Описание слайда:
JaVa beans

Слайд 98





JavaBeans. Определение
JavaBeans – гибкая, мощная и удобная технология разработки многократно-используемых программных компонент, называемых beans.
	
C точки зрения ООП, компонент JavaBean – это классический самодостаточный объект, который, будучи написан один раз, может быть многократно использован при построении новых апплетов, сервлетов, полноценных приложений, а также других компонент JavaBean.
Описание слайда:
JavaBeans. Определение JavaBeans – гибкая, мощная и удобная технология разработки многократно-используемых программных компонент, называемых beans. C точки зрения ООП, компонент JavaBean – это классический самодостаточный объект, который, будучи написан один раз, может быть многократно использован при построении новых апплетов, сервлетов, полноценных приложений, а также других компонент JavaBean.

Слайд 99





JavaBeans. Определение
Отличие от других технологий заключается в том, что компонент JavaBean строится по определенным правилам, с использованием в некоторых ситуациях строго регламентированных интерфейсов и базовых классов.
	
Java bean – многократно используемая компонента, состоящая из свойств (properties), методов (methods) и событий (events)
Описание слайда:
JavaBeans. Определение Отличие от других технологий заключается в том, что компонент JavaBean строится по определенным правилам, с использованием в некоторых ситуациях строго регламентированных интерфейсов и базовых классов. Java bean – многократно используемая компонента, состоящая из свойств (properties), методов (methods) и событий (events)

Слайд 100





JavaBeans. Свойства Bean
Свойства компоненты Bean – это дискретные, именованные атрибуты соответствующего объекта, которые могут оказывать влияние на режим его функционирования. 
В отличие от атрибутов обычного класса, свойства компоненты Bean должны задаваться вполне определенным образом: нежелательно объявлять какой-либо атрибут компоненты Bean как public. Наоборот, его следует декларировать как private, а сам класс дополнить двумя методами set и get.
Описание слайда:
JavaBeans. Свойства Bean Свойства компоненты Bean – это дискретные, именованные атрибуты соответствующего объекта, которые могут оказывать влияние на режим его функционирования. В отличие от атрибутов обычного класса, свойства компоненты Bean должны задаваться вполне определенным образом: нежелательно объявлять какой-либо атрибут компоненты Bean как public. Наоборот, его следует декларировать как private, а сам класс дополнить двумя методами set и get.

Слайд 101





JavaBeans. Свойства Bean. Example 21
Описание слайда:
JavaBeans. Свойства Bean. Example 21

Слайд 102





JavaBeans. Свойства Bean
Следует заметить, что согласно спецификации Bean, аналогичные методы set и get необходимо использовать не только для атрибутов простого типа, таких как int или String, но и в более сложных ситуациях, например для внутренних массивов String[].
Описание слайда:
JavaBeans. Свойства Bean Следует заметить, что согласно спецификации Bean, аналогичные методы set и get необходимо использовать не только для атрибутов простого типа, таких как int или String, но и в более сложных ситуациях, например для внутренних массивов String[].

Слайд 103





JavaBeans. Свойства Bean. Example 22
Описание слайда:
JavaBeans. Свойства Bean. Example 22

Слайд 104





JavaBeans. Свойства Bean. Example 23
Атрибуту типа boolean в классе Bean должны соответствовать несколько иные методы: is и set
Описание слайда:
JavaBeans. Свойства Bean. Example 23 Атрибуту типа boolean в классе Bean должны соответствовать несколько иные методы: is и set

Слайд 105





JavaBeans. Example 24
Описание слайда:
JavaBeans. Example 24

Слайд 106





JavaBeans. Использование
Может показаться, что нет никакой разницы, предоставляем ли мы доступ извне непосредственно к свойству компоненты Bean, или же для достижения того же самого результата используем методы set и get. Принципиально важное отличие заключается в том, что в последнем случае мы получаем возможность контролировать все изменения этого свойства. Например, мы можем связать с методом set определенный программный код, который будет автоматически оповещать другие компоненты приложения, если кто-то попытается изменить значение этого свойства.
Описание слайда:
JavaBeans. Использование Может показаться, что нет никакой разницы, предоставляем ли мы доступ извне непосредственно к свойству компоненты Bean, или же для достижения того же самого результата используем методы set и get. Принципиально важное отличие заключается в том, что в последнем случае мы получаем возможность контролировать все изменения этого свойства. Например, мы можем связать с методом set определенный программный код, который будет автоматически оповещать другие компоненты приложения, если кто-то попытается изменить значение этого свойства.

Слайд 107





JavaBeans. Синхронизация
Заметим, что реализуя тот или иной метод, разработчик должен учитывать, что создаваемый им компонент Bean должен будет функционировать в программной среде со многими параллельными потоками (threads), т.е. в условиях, когда сразу от нескольких потоков могут поступить запросы на доступ к тем или иным методам или атрибутам объекта. Наиболее тривиальный способ синхронизации таких запросов заключается в том, чтобы пометить все методы класса Bean директивой synchronized.
Описание слайда:
JavaBeans. Синхронизация Заметим, что реализуя тот или иной метод, разработчик должен учитывать, что создаваемый им компонент Bean должен будет функционировать в программной среде со многими параллельными потоками (threads), т.е. в условиях, когда сразу от нескольких потоков могут поступить запросы на доступ к тем или иным методам или атрибутам объекта. Наиболее тривиальный способ синхронизации таких запросов заключается в том, чтобы пометить все методы класса Bean директивой synchronized.

Слайд 108





массивы
Описание слайда:
массивы

Слайд 109





Массивы. Определения
Для хранения нескольких однотипных значений используется ссылочный тип – массив
Массивы элементов базовых типов состоят из значений, проиндексированных начиная с нуля. 
Все массивы в языке Java являются динамическими, поэтому для создания массива требуется выделение памяти с помощью оператора new или инициализации.
Описание слайда:
Массивы. Определения Для хранения нескольких однотипных значений используется ссылочный тип – массив Массивы элементов базовых типов состоят из значений, проиндексированных начиная с нуля. Все массивы в языке Java являются динамическими, поэтому для создания массива требуется выделение памяти с помощью оператора new или инициализации.

Слайд 110





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

Слайд 111





Массивы. Определения
Массивы объектов в действительности представляют собой массивы ссылок, проинициализированных по умолчанию значением null.
Все массивы хранятся в куче (heap), одной из подобластей памяти, выделенной системой для работы виртуальной машины. Определить общий объем памяти и объем свободной памяти, можно с помощью методов totalMemory() и freeMemory() класса Runtime.
Описание слайда:
Массивы. Определения Массивы объектов в действительности представляют собой массивы ссылок, проинициализированных по умолчанию значением null. Все массивы хранятся в куче (heap), одной из подобластей памяти, выделенной системой для работы виртуальной машины. Определить общий объем памяти и объем свободной памяти, можно с помощью методов totalMemory() и freeMemory() класса Runtime.

Слайд 112





Массивы. Объявление и инициализация. Example 25
Имена массивов являются ссылками. Для объявления ссылки на массив можно записать пустые квадратные скобки после имени типа, например: int a[]. Аналогичный результат получится при записи int[] a.
Описание слайда:
Массивы. Объявление и инициализация. Example 25 Имена массивов являются ссылками. Для объявления ссылки на массив можно записать пустые квадратные скобки после имени типа, например: int a[]. Аналогичный результат получится при записи int[] a.

Слайд 113





Массивы. Объявление и инициализация. Example 25
Описание слайда:
Массивы. Объявление и инициализация. Example 25

Слайд 114





Массивы. Массив массивов
Описание слайда:
Массивы. Массив массивов

Слайд 115





Массивы. Массив массивов
Каждый из массивов может иметь отличную от других длину.
Первый индекс указывает на порядковый номер массива, например arr[2][0] указывает на первый элемент третьего массива, а именно на значение 4.
Описание слайда:
Массивы. Массив массивов Каждый из массивов может иметь отличную от других длину. Первый индекс указывает на порядковый номер массива, например arr[2][0] указывает на первый элемент третьего массива, а именно на значение 4.

Слайд 116





Массивы. Работа с массивами
Члены объектов-массивов:
public final int length это поле содержит длину массива
public Object clone() – создает копию массива
+ все методы класса Object. 
Любой массив можно привести к классу Object или к массиву совместимого типа.
Описание слайда:
Массивы. Работа с массивами Члены объектов-массивов: public final int length это поле содержит длину массива public Object clone() – создает копию массива + все методы класса Object. Любой массив можно привести к классу Object или к массиву совместимого типа.

Слайд 117





Массивы. Работа с массивами. Example 26
Описание слайда:
Массивы. Работа с массивами. Example 26

Слайд 118





Массивы. Работа с массивами. Example 27
Описание слайда:
Массивы. Работа с массивами. Example 27

Слайд 119





Массивы. Работа с массивами. Example 27
Описание слайда:
Массивы. Работа с массивами. Example 27

Слайд 120





Массивы. Ошибки времени выполнения. Example 28
Обращение к несуществующему индексу массива отслеживается виртуальной машиной во время исполнения кода:
Описание слайда:
Массивы. Ошибки времени выполнения. Example 28 Обращение к несуществующему индексу массива отслеживается виртуальной машиной во время исполнения кода:

Слайд 121





Массивы. Ошибки времени выполнения. Example 29
Попытка поместить в массив неподходящий элемент пресекается виртуальной машиной:
Описание слайда:
Массивы. Ошибки времени выполнения. Example 29 Попытка поместить в массив неподходящий элемент пресекается виртуальной машиной:

Слайд 122





Code conventions
Описание слайда:
Code conventions

Слайд 123





Code conventions. Code conventions for Java Programming 
Содержание: имена файлов, организация структуры файлов, структурированное расположение текста, комментарии, объявления, операторы, пробельные символы, соглашение об именовании, практики программирования.
80% стоимости программного обеспечения уходит на поддержку. 
Едва ли программное обеспечение весь свой жизненный цикл будет поддерживаться автором..
Code conventions  улучшает удобочитаемость программного кода, позволяя понять новый код долее быстро и полностью. 
http://www.oracle.com/technetwork/java/codeconvtoc-136057.html
Описание слайда:
Code conventions. Code conventions for Java Programming Содержание: имена файлов, организация структуры файлов, структурированное расположение текста, комментарии, объявления, операторы, пробельные символы, соглашение об именовании, практики программирования. 80% стоимости программного обеспечения уходит на поддержку. Едва ли программное обеспечение весь свой жизненный цикл будет поддерживаться автором.. Code conventions улучшает удобочитаемость программного кода, позволяя понять новый код долее быстро и полностью. http://www.oracle.com/technetwork/java/codeconvtoc-136057.html

Слайд 124





Code conventions. Best Practices 
Объявляйте локальные переменные сразу перед использованием
Определяется их область видимости.
 Уменьшается вероятность ошибок и  неудобочитаемости.
Поля необходимо объявлять как private
Декларирование полей как public в большинстве случаев некорректно, оно не защищает пользователя класса от изменений в реализации класса.
Объявляйте поля как private. Если пользователю необходимо получить доступ к этим полям, следует предусмотреть set и get методы.
Описание слайда:
Code conventions. Best Practices Объявляйте локальные переменные сразу перед использованием Определяется их область видимости. Уменьшается вероятность ошибок и неудобочитаемости. Поля необходимо объявлять как private Декларирование полей как public в большинстве случаев некорректно, оно не защищает пользователя класса от изменений в реализации класса. Объявляйте поля как private. Если пользователю необходимо получить доступ к этим полям, следует предусмотреть set и get методы.

Слайд 125





Code conventions. Best Practices 
При объявлении разделяйте public и private члены класса
Это общераспространенная практика, разделения членов класса согласно их области видимости (public, private, protected). Данные с каким атрибутом доступа будут располагаться первыми зависит от программиста.
Используйте javadoc
Javadoc – это мощный инструмент, который необходимо использовать.
Описание слайда:
Code conventions. Best Practices При объявлении разделяйте public и private члены класса Это общераспространенная практика, разделения членов класса согласно их области видимости (public, private, protected). Данные с каким атрибутом доступа будут располагаться первыми зависит от программиста. Используйте javadoc Javadoc – это мощный инструмент, который необходимо использовать.

Слайд 126





Code conventions. Best Practices 
С осторожностью используйте System.Exit(0) с многопоточными приложениями.
Нормальный способ завершения программы должен завершать работу всех используемых потоков.
Используйте интерфейсы для определения констант.
Создание класса для констант является оправданным, только если это широко используемые константы.
Описание слайда:
Code conventions. Best Practices С осторожностью используйте System.Exit(0) с многопоточными приложениями. Нормальный способ завершения программы должен завершать работу всех используемых потоков. Используйте интерфейсы для определения констант. Создание класса для констант является оправданным, только если это широко используемые константы.

Слайд 127





Code conventions. Best Practices 
Проверяйте аргументы методов
Первые строки методов обычно проверяют корректность переданных параметров. Идея состоит в том, чтобы как можно быстрее сгенерировать сообщение об ошибке в случае неудачи. Это особенно важно для конструкторов.
Дополнительные пробелы в списке аргументов
Дополнительные пробелы в списке аргументов повышают читабельность кода – как (this ) вместо (that).
Описание слайда:
Code conventions. Best Practices Проверяйте аргументы методов Первые строки методов обычно проверяют корректность переданных параметров. Идея состоит в том, чтобы как можно быстрее сгенерировать сообщение об ошибке в случае неудачи. Это особенно важно для конструкторов. Дополнительные пробелы в списке аргументов Дополнительные пробелы в списке аргументов повышают читабельность кода – как (this ) вместо (that).

Слайд 128





Code conventions. Best Practices 
Применяйте Testing Framework
Используйте testing framework чтобы убедиться, что класс выполняет контракт
Используйте массивы нулевой длины вместо null
Когда метод возвращает массив, который может быть пустым, не следует возвращать null.
Это позволяет не проверять возвращаемое значение на null.
Описание слайда:
Code conventions. Best Practices Применяйте Testing Framework Используйте testing framework чтобы убедиться, что класс выполняет контракт Используйте массивы нулевой длины вместо null Когда метод возвращает массив, который может быть пустым, не следует возвращать null. Это позволяет не проверять возвращаемое значение на null.

Слайд 129





Code conventions. Best Practices 
Избегайте пустых блоков catch
В этом случае когда происходит исключение, то ничего не происходит, и программа завершает свою работу по непонятной причине.
Применяйте оператор throws
Не следует использовать базовый класс исключения вместо нескольких его производных, в этом случае теряется важная информация об исключении.
Описание слайда:
Code conventions. Best Practices Избегайте пустых блоков catch В этом случае когда происходит исключение, то ничего не происходит, и программа завершает свою работу по непонятной причине. Применяйте оператор throws Не следует использовать базовый класс исключения вместо нескольких его производных, в этом случае теряется важная информация об исключении.

Слайд 130





Code conventions. Best Practices 
Правильно выбирайте используемые коллекции
Документация Sun определяет ArrayList, HashMap и HashSet как предпочтительные для применения. Их производительность выше.
Работайте с коллекциями без использование индексов
Применяете for-each или итераторы. Индексы всегда остаются одной из главных причин ошибок.
Описание слайда:
Code conventions. Best Practices Правильно выбирайте используемые коллекции Документация Sun определяет ArrayList, HashMap и HashSet как предпочтительные для применения. Их производительность выше. Работайте с коллекциями без использование индексов Применяете for-each или итераторы. Индексы всегда остаются одной из главных причин ошибок.

Слайд 131





Code conventions. Best Practices 
Структура source-файла
public-класс или интерфейс всегда должен быть объявлен первым в файле.
если есть ассоциированные с public- классом private- классы или интерфейсы, их можно разместить в одном файле.
Описание слайда:
Code conventions. Best Practices Структура source-файла public-класс или интерфейс всегда должен быть объявлен первым в файле. если есть ассоциированные с public- классом private- классы или интерфейсы, их можно разместить в одном файле.

Слайд 132





Code conventions. Best Practices 
Declarations. Длина строк кода
Не используйте строки длиной более 80 символов.
Объявление переменных
Не присваивайте одинаковые значения нескольким переменных одним оператором.
fooBar.fChar = barFoo.lchar = ‘c’;c// AVOID!!!
При декларировании переменных объявляйте по одной переменной в строке кода
Такое объявление позволяет писать понятные комментарии.
Описание слайда:
Code conventions. Best Practices Declarations. Длина строк кода Не используйте строки длиной более 80 символов. Объявление переменных Не присваивайте одинаковые значения нескольким переменных одним оператором. fooBar.fChar = barFoo.lchar = ‘c’;c// AVOID!!! При декларировании переменных объявляйте по одной переменной в строке кода Такое объявление позволяет писать понятные комментарии.

Слайд 133





Code conventions. Best Practices 
Statements. Каждая строка кода должна содержать только один оператор.
Example:
argv++; // Correct
argc-; // Correct
argv++; argc-; II AVOID!
Описание слайда:
Code conventions. Best Practices Statements. Каждая строка кода должна содержать только один оператор. Example: argv++; // Correct argc-; // Correct argv++; argc-; II AVOID!

Слайд 134





Code conventions. Соглашение об именовании
Имена файлов
Customer.java
Person.class
Имена пакетов
java.util
javax.swing
Имена классов
Customer
Person
Описание слайда:
Code conventions. Соглашение об именовании Имена файлов Customer.java Person.class Имена пакетов java.util javax.swing Имена классов Customer Person

Слайд 135





Code conventions. Соглашение об именовании
Имена свойств класса
firstName
Id
Имена методов
getName
isAlive
Имена констант
SQUARE_SIZE
Также могут использоваться цифры 1..9, _, $
Описание слайда:
Code conventions. Соглашение об именовании Имена свойств класса firstName Id Имена методов getName isAlive Имена констант SQUARE_SIZE Также могут использоваться цифры 1..9, _, $

Слайд 136





Параметризованные классы
Описание слайда:
Параметризованные классы

Слайд 137





Параметризованные классы. Назначение и синтаксис
С помощью шаблонов можно создавать параметризованные (родовые, generic) классы и методы, что позволяет использовать более строгую типизацию, например при работе с коллекциями. 
Пример класса-шаблона с двумя параметрами:



Здесь T1, Т2 – фиктивные типы, которые используются при объявлении атрибутов класса. Компилятор заменит все фиктивные типы на реальные и создаст соответствующий им объект. Объект класса Message можно создать, например, следующим образом:
Описание слайда:
Параметризованные классы. Назначение и синтаксис С помощью шаблонов можно создавать параметризованные (родовые, generic) классы и методы, что позволяет использовать более строгую типизацию, например при работе с коллекциями. Пример класса-шаблона с двумя параметрами: Здесь T1, Т2 – фиктивные типы, которые используются при объявлении атрибутов класса. Компилятор заменит все фиктивные типы на реальные и создаст соответствующий им объект. Объект класса Message можно создать, например, следующим образом:

Слайд 138





Параметризованные классы. Назначение и синтаксис. Example 30
Описание слайда:
Параметризованные классы. Назначение и синтаксис. Example 30

Слайд 139





Параметризованные классы. Назначение и синтаксис. Example 30
package _java._se._01._generics;
public class OptionalDemo {
     public static void main(String[] args) {
         // параметризация типом Integer
   	Optional<Integer> ob1 = new Optional<Integer>();
	ob1.setValue(1);
	// ob1.setValue("2");// ошибка компиляции: недопустимый тип
	int v1 = ob1.getValue();
	System.out.println(v1);
	// параметризация типом String
	Optional<String> ob2 = new Optional<String>("Java");
	String v2 = ob2.getValue();
	System.out.println(v2);
	// ob1 = ob2; //ошибка компиляции – параметризация не ковариантна
Описание слайда:
Параметризованные классы. Назначение и синтаксис. Example 30 package _java._se._01._generics; public class OptionalDemo { public static void main(String[] args) { // параметризация типом Integer Optional<Integer> ob1 = new Optional<Integer>(); ob1.setValue(1); // ob1.setValue("2");// ошибка компиляции: недопустимый тип int v1 = ob1.getValue(); System.out.println(v1); // параметризация типом String Optional<String> ob2 = new Optional<String>("Java"); String v2 = ob2.getValue(); System.out.println(v2); // ob1 = ob2; //ошибка компиляции – параметризация не ковариантна

Слайд 140





Параметризованные классы. Назначение и синтаксис. Example 30
	// параметризация по умолчанию – Object
	Optional ob3 = new Optional();
	System.out.println(ob3.getValue());
	ob3.setValue("Java SE 6");
	System.out.println(ob3.toString());/* выводится тип 	объекта, а не тип параметризации */
	b3.setValue(71);
	System.out.println(ob3.toString());
	ob3.setValue(null);
     }
}
Описание слайда:
Параметризованные классы. Назначение и синтаксис. Example 30 // параметризация по умолчанию – Object Optional ob3 = new Optional(); System.out.println(ob3.getValue()); ob3.setValue("Java SE 6"); System.out.println(ob3.toString());/* выводится тип объекта, а не тип параметризации */ b3.setValue(71); System.out.println(ob3.toString()); ob3.setValue(null); } }

Слайд 141





Параметризованные классы. Использование extends
Объявление generic-типа в виде <T>, несмотря на возможность использовать любой тип в качестве параметра, ограничивает область применения разрабатываемого класса. Переменные такого типа могут вызывать только методы класса Object. Доступ к другим методам ограничивает компилятор, предупреждая возможные варианты возникновения ошибок.
Чтобы расширить возможности параметризованных членов класса, можно ввести ограничения на используемые типы при помощи следующего объявления класса:
Описание слайда:
Параметризованные классы. Использование extends Объявление generic-типа в виде <T>, несмотря на возможность использовать любой тип в качестве параметра, ограничивает область применения разрабатываемого класса. Переменные такого типа могут вызывать только методы класса Object. Доступ к другим методам ограничивает компилятор, предупреждая возможные варианты возникновения ошибок. Чтобы расширить возможности параметризованных членов класса, можно ввести ограничения на используемые типы при помощи следующего объявления класса:

Слайд 142





Параметризованные классы. Использование extends
Такая запись говорит о том, что в качестве типа Т разрешено применять только классы, являющиеся наследниками (суперклассами) класса Tип, и соответственно появляется возможность вызова методов ограничивающих (bound) типов.
Описание слайда:
Параметризованные классы. Использование extends Такая запись говорит о том, что в качестве типа Т разрешено применять только классы, являющиеся наследниками (суперклассами) класса Tип, и соответственно появляется возможность вызова методов ограничивающих (bound) типов.

Слайд 143





Параметризованные классы. Метасимволы
Часто возникает необходимость в метод параметризованного класса одного допустимого типа передать объект этого же класса, но параметризованного другим типом. 
В этом случае при определении метода следует применить метасимвол “?”. 
<?>
Метасимвол также может использоваться с ограничением extends для передаваемого типа.
<? extends Number>
Описание слайда:
Параметризованные классы. Метасимволы Часто возникает необходимость в метод параметризованного класса одного допустимого типа передать объект этого же класса, но параметризованного другим типом. В этом случае при определении метода следует применить метасимвол “?”. <?> Метасимвол также может использоваться с ограничением extends для передаваемого типа. <? extends Number>

Слайд 144





Параметризованные классы. Метасимволы. Example 31
Описание слайда:
Параметризованные классы. Метасимволы. Example 31

Слайд 145





Параметризованные классы. Метасимволы. Example 31
Описание слайда:
Параметризованные классы. Метасимволы. Example 31

Слайд 146





Параметризованные классы. Метасимволы
Метод sameAny(Mark<?> ob) может принимать объекты типа Mark, инициализированные любым из допустимых для этого класса типов, в то время как метод с параметром Mark<T> мог бы принимать объекты с инициализацией того же типа, что и вызывающий метод объект.
Описание слайда:
Параметризованные классы. Метасимволы Метод sameAny(Mark<?> ob) может принимать объекты типа Mark, инициализированные любым из допустимых для этого класса типов, в то время как метод с параметром Mark<T> мог бы принимать объекты с инициализацией того же типа, что и вызывающий метод объект.

Слайд 147





Параметризованные классы. Параметризованные методы
Параметризованный (generic) метод определяет базовый набор операций, которые будут применяться к разным типам данных, получаемых методом в качестве параметра.
<T extends Тип> Тип method(T arg) {}
<T> Тип method(T arg) {}
Описание типа должно находиться перед возвращаемым типом. Запись первого вида означает, что в метод можно передавать объекты, типы которых являются подклассами класса, указанного после extends. Второй способ объявления метода никаких ограничений на передаваемый тип не ставит.
Описание слайда:
Параметризованные классы. Параметризованные методы Параметризованный (generic) метод определяет базовый набор операций, которые будут применяться к разным типам данных, получаемых методом в качестве параметра. <T extends Тип> Тип method(T arg) {} <T> Тип method(T arg) {} Описание типа должно находиться перед возвращаемым типом. Запись первого вида означает, что в метод можно передавать объекты, типы которых являются подклассами класса, указанного после extends. Второй способ объявления метода никаких ограничений на передаваемый тип не ставит.

Слайд 148





Параметризованные классы. Параметризованные методы. Example 32
Описание слайда:
Параметризованные классы. Параметризованные методы. Example 32

Слайд 149





Параметризованные классы. Ограничения на использование
Нельзя явно вызвать конструктор параметризованного класса, так как компилятор не знает, какой конструктор может быть вызван и какой объем памяти должен быть выделен при создании объекта, 
Параметризованные поля не могут быть статическими, статические методы не могут иметь параметризованные поля и обращаться к ним также запрещено.
Описание слайда:
Параметризованные классы. Ограничения на использование Нельзя явно вызвать конструктор параметризованного класса, так как компилятор не знает, какой конструктор может быть вызван и какой объем памяти должен быть выделен при создании объекта, Параметризованные поля не могут быть статическими, статические методы не могут иметь параметризованные поля и обращаться к ним также запрещено.

Слайд 150





Параметризованные классы. Применение
Параметризованные методы применяются когда необходимо разработать базовый набор операций, который будет работать с различными типами данных. 
Описание типа всегда находится перед возвращаемым типом. Параметризованные методы могут размещаться как в обычных, так и в параметризованных классах. Параметр метода может не иметь никакого отношения к параметру класса. 
Метасимволы применимы и к generic-методам.
Описание слайда:
Параметризованные классы. Применение Параметризованные методы применяются когда необходимо разработать базовый набор операций, который будет работать с различными типами данных. Описание типа всегда находится перед возвращаемым типом. Параметризованные методы могут размещаться как в обычных, так и в параметризованных классах. Параметр метода может не иметь никакого отношения к параметру класса. Метасимволы применимы и к generic-методам.

Слайд 151





Перечисления (enums)
Описание слайда:
Перечисления (enums)

Слайд 152





Перечисления. Синтаксис
Examples:
dayOfWeek: SUNDAY, MONDAY, TUESDAY, …
month: JAN, FEB, MAR, APR, …
gender: MALE, FEMALE
title: MR, MRS, MS, DR
appletState: READY, RUNNING, BLOCKED, DEAD
Описание слайда:
Перечисления. Синтаксис Examples: dayOfWeek: SUNDAY, MONDAY, TUESDAY, … month: JAN, FEB, MAR, APR, … gender: MALE, FEMALE title: MR, MRS, MS, DR appletState: READY, RUNNING, BLOCKED, DEAD

Слайд 153





Перечисления. Определения
В отличие от статических констант, предоставляют типизированный, безопасный способ задания фиксированных наборов значений
	Являются классами специального вида, не могут иметь наследников, сами в свою очередь наследуются от java.lang.Enum и реализуют java.lang.Comparable (следовательно, могут быть сортированы) и  java.io.Serializable.
Описание слайда:
Перечисления. Определения В отличие от статических констант, предоставляют типизированный, безопасный способ задания фиксированных наборов значений Являются классами специального вида, не могут иметь наследников, сами в свою очередь наследуются от java.lang.Enum и реализуют java.lang.Comparable (следовательно, могут быть сортированы) и java.io.Serializable.

Слайд 154





Перечисления. Определения
Не могут быть абстрактными и содержать абстрактные методы (кроме случая, когда каждый объект перечисления реализовывает абстрактный метод), но могут реализовывать интерфейсы.
Enums переопределяют toString() and определяют valueOf()
Описание слайда:
Перечисления. Определения Не могут быть абстрактными и содержать абстрактные методы (кроме случая, когда каждый объект перечисления реализовывает абстрактный метод), но могут реализовывать интерфейсы. Enums переопределяют toString() and определяют valueOf()

Слайд 155





Перечисления. Создание объектов перечисления
Экземпляры объектов перечисления нельзя создать с помощью new, каждый объект перечисления уникален, создается при загрузке перечисления в виртуальную машину, поэтому допустимо сравнение ссылок для объектов перечислений, можно использовать switch
Как и обычные классы могут реализовывать поведение, содержать вложенные классы.
Enums по умолчанию public, static и final
Описание слайда:
Перечисления. Создание объектов перечисления Экземпляры объектов перечисления нельзя создать с помощью new, каждый объект перечисления уникален, создается при загрузке перечисления в виртуальную машину, поэтому допустимо сравнение ссылок для объектов перечислений, можно использовать switch Как и обычные классы могут реализовывать поведение, содержать вложенные классы. Enums по умолчанию public, static и final

Слайд 156





Перечисления. Создание объектов перечисления. Example 33
Описание слайда:
Перечисления. Создание объектов перечисления. Example 33

Слайд 157





Перечисления. Методы перечисления
Каждый класс перечисления неявно содержит следующие методы:
static enumType[] values() – возвращает массив, содержащий все элементы перечисления в порядке их объявления;
static T valueOf(Class<T> enumType, String arg) – возвращает элемент перечисления, соответствующий передаваемому типу и значению передаваемой строки;
static enumType valueOf(String arg) – возвращает элемент пере­числения, соответствующий значению передаваемой строки;
(статические методы, выбрасывает IllegalArgumentException если нет элемента с указанным именем)
Описание слайда:
Перечисления. Методы перечисления Каждый класс перечисления неявно содержит следующие методы: static enumType[] values() – возвращает массив, содержащий все элементы перечисления в порядке их объявления; static T valueOf(Class<T> enumType, String arg) – возвращает элемент перечисления, соответствующий передаваемому типу и значению передаваемой строки; static enumType valueOf(String arg) – возвращает элемент пере­числения, соответствующий значению передаваемой строки; (статические методы, выбрасывает IllegalArgumentException если нет элемента с указанным именем)

Слайд 158





Перечисления. Методы перечисления
Каждый класс перечисления неявно содержит следующие методы:
int ordinal() – возвращает позицию элемента перечисления. 
String toString() 

boolean equals(Object other)
Описание слайда:
Перечисления. Методы перечисления Каждый класс перечисления неявно содержит следующие методы: int ordinal() – возвращает позицию элемента перечисления. String toString() boolean equals(Object other)

Слайд 159





Перечисления. Методы перечисления. Example 34
Описание слайда:
Перечисления. Методы перечисления. Example 34

Слайд 160





Перечисления. Методы перечисления. Example 34
Описание слайда:
Перечисления. Методы перечисления. Example 34

Слайд 161





Перечисления. Конструкторы и анонимные классы для перечисления. Example 35
Класс перечисления может иметь конструктор (private либо package), который вызывается для каждого элемента при его декларации. Отдельные элементы перечисления могут реализовывать свое собственное поведение.
Описание слайда:
Перечисления. Конструкторы и анонимные классы для перечисления. Example 35 Класс перечисления может иметь конструктор (private либо package), который вызывается для каждого элемента при его декларации. Отдельные элементы перечисления могут реализовывать свое собственное поведение.

Слайд 162





Перечисления. Сравнение переменных перечисления. Example 36
На равенство переменные перечислимого типа можно сравнить с помощью операции == в операторе if, или с помощью оператора switch.
Описание слайда:
Перечисления. Сравнение переменных перечисления. Example 36 На равенство переменные перечислимого типа можно сравнить с помощью операции == в операторе if, или с помощью оператора switch.

Слайд 163





Перечисления. Сравнение переменных перечисления. Example 36
Описание слайда:
Перечисления. Сравнение переменных перечисления. Example 36

Слайд 164





Внутренние классы
Описание слайда:
Внутренние классы

Слайд 165





Внутренние классы. Определение
В Java можно объявлять классы внутри других классов и даже внутри методов. Они делятся на внутренние нестатические, сложенные статические и анонимные классы. Такая возможность используется, если класс более нигде не используется, кроме как в том, в который он вложен. Более того, использование внутренних классов позволяет содавать простые и понятные программы, управляющие событиями.
Описание слайда:
Внутренние классы. Определение В Java можно объявлять классы внутри других классов и даже внутри методов. Они делятся на внутренние нестатические, сложенные статические и анонимные классы. Такая возможность используется, если класс более нигде не используется, кроме как в том, в который он вложен. Более того, использование внутренних классов позволяет содавать простые и понятные программы, управляющие событиями.

Слайд 166





Внутренние классы. Inner (нестатические). Example 37
Методы внутреннего класса имеют прямой доступ ко всем полям и методам внешнего класса.
Описание слайда:
Внутренние классы. Inner (нестатические). Example 37 Методы внутреннего класса имеют прямой доступ ко всем полям и методам внешнего класса.

Слайд 167





Внутренние классы. Inner (нестатические)
Доступ к элементам внутреннего класса возможен только из внешнего класса через объект внутреннего класса. То есть, чтобы класс Outer мог вызвать какой-либо метод класса Inner в классе Outer необходимо создать объект класса Inner и вызывать методы уже через этот объект.
Описание слайда:
Внутренние классы. Inner (нестатические) Доступ к элементам внутреннего класса возможен только из внешнего класса через объект внутреннего класса. То есть, чтобы класс Outer мог вызвать какой-либо метод класса Inner в классе Outer необходимо создать объект класса Inner и вызывать методы уже через этот объект.

Слайд 168





Внутренние классы. Inner (нестатические). Example 38
Описание слайда:
Внутренние классы. Inner (нестатические). Example 38

Слайд 169





Внутренние классы. Inner (нестатические). Example 38
Описание слайда:
Внутренние классы. Inner (нестатические). Example 38

Слайд 170





Внутренние классы. Inner (нестатические)
Объект внутреннего класса имеет ссылку на объект своего внешнего класса. Ссылка эта неявная. Предположим что имя это ссылки ref_outer (естественно, никакой реальной ссылки с таким именем по умолчанию во внутреннем классе не предусматривается), тогда любой доступ к элементам внешнего класса из внутреннего выглядит следующим образом. Именно эта неявная ссылка и позволяет методам внутреннего класса иметь прямой доступ к полям и методам внешнего класса.
Описание слайда:
Внутренние классы. Inner (нестатические) Объект внутреннего класса имеет ссылку на объект своего внешнего класса. Ссылка эта неявная. Предположим что имя это ссылки ref_outer (естественно, никакой реальной ссылки с таким именем по умолчанию во внутреннем классе не предусматривается), тогда любой доступ к элементам внешнего класса из внутреннего выглядит следующим образом. Именно эта неявная ссылка и позволяет методам внутреннего класса иметь прямой доступ к полям и методам внешнего класса.

Слайд 171





Внутренние классы. Inner (нестатические). Example 39
Описание слайда:
Внутренние классы. Inner (нестатические). Example 39

Слайд 172





Внутренние классы. Inner (нестатические)
Внутренние классы не могут содержать static-полей, кроме final static
Описание слайда:
Внутренние классы. Inner (нестатические) Внутренние классы не могут содержать static-полей, кроме final static

Слайд 173





Внутренние классы. Inner (нестатические). Example 40
Описание слайда:
Внутренние классы. Inner (нестатические). Example 40

Слайд 174





Внутренние классы. Inner (нестатические). Example 41
Доступ к таким полям можно получить извне класса, используя конструкцию
 
имя_внешнего_класса.имя_внутреннего класса.имя_статической_переменной
Описание слайда:
Внутренние классы. Inner (нестатические). Example 41 Доступ к таким полям можно получить извне класса, используя конструкцию   имя_внешнего_класса.имя_внутреннего класса.имя_статической_переменной

Слайд 175





Внутренние классы. Inner (нестатические). Example 42
Также доступ к переменной типа final static возможен во внешнем классе через имя внутреннего класса:
Описание слайда:
Внутренние классы. Inner (нестатические). Example 42 Также доступ к переменной типа final static возможен во внешнем классе через имя внутреннего класса:

Слайд 176





Внутренние классы. Inner (нестатические). Example 43
Внутренние классы могут быть производными от других классов. Внутренние классы могут быть базовыми
Описание слайда:
Внутренние классы. Inner (нестатические). Example 43 Внутренние классы могут быть производными от других классов. Внутренние классы могут быть базовыми

Слайд 177





Внутренние классы. Inner (нестатические). Example 43
Описание слайда:
Внутренние классы. Inner (нестатические). Example 43

Слайд 178





Внутренние классы. Inner (нестатические). Example 43
Описание слайда:
Внутренние классы. Inner (нестатические). Example 43

Слайд 179





Внутренние классы. Inner (нестатические). Example 44
Внутренние классы могут реализовывать интерфейсы
Описание слайда:
Внутренние классы. Inner (нестатические). Example 44 Внутренние классы могут реализовывать интерфейсы

Слайд 180





Внутренние классы. Inner (нестатические). Example 45
Внутренние классы могут быть объявлены с параметрами final, abstract, public, protected, private
Описание слайда:
Внутренние классы. Inner (нестатические). Example 45 Внутренние классы могут быть объявлены с параметрами final, abstract, public, protected, private

Слайд 181





Внутренние классы. Inner (нестатические). Example 46
Если необходимо создать объект внутреннего класса где-нибудь, кроме внешнего статического метода класса, то нужно определить тип объекта как
имя_внешнего_класса.имя_внутреннего_класса
Описание слайда:
Внутренние классы. Inner (нестатические). Example 46 Если необходимо создать объект внутреннего класса где-нибудь, кроме внешнего статического метода класса, то нужно определить тип объекта как имя_внешнего_класса.имя_внутреннего_класса

Слайд 182





Внутренние классы. Inner (нестатические). Example 46
Описание слайда:
Внутренние классы. Inner (нестатические). Example 46

Слайд 183





Внутренние классы. Inner (нестатические)
Внутренний класс может быть объявлен внутри метода или логического блока внешнего класса; видимость класса регулируется видимостью того блока, в котором он объявлен; однако класс сохраняет доступ ко всем полям и методам внешнего класса, а также константам, объявленным в текущем блоке кода.
Описание слайда:
Внутренние классы. Inner (нестатические) Внутренний класс может быть объявлен внутри метода или логического блока внешнего класса; видимость класса регулируется видимостью того блока, в котором он объявлен; однако класс сохраняет доступ ко всем полям и методам внешнего класса, а также константам, объявленным в текущем блоке кода.

Слайд 184





Внутренние классы. Inner (нестатические). Example 47
Описание слайда:
Внутренние классы. Inner (нестатические). Example 47

Слайд 185





Внутренние классы. Inner (нестатические). Example 48
Локальные внутренние классы не объявляются с помощью модификаторов доступа.
Описание слайда:
Внутренние классы. Inner (нестатические). Example 48 Локальные внутренние классы не объявляются с помощью модификаторов доступа.

Слайд 186





Внутренние классы. Inner (нестатические)
Правила для внутренних классов.
1) ссылка на внешний класс имеет вид
 
имя_внешнего_класса.this
 
Для получения доступа из внутреннего класса к экземпляру его внешнего класса необходимо в ссылке указать имя класса и ключевое слово this, поставив между ними точку (например, OuterClass.this). Ключевое слово this обеспечивает доступ к потенциально спрятанным методам и полям, в которых внутренние и внешние классы используют метод или переменную с одинаковыми именами.
Описание слайда:
Внутренние классы. Inner (нестатические) Правила для внутренних классов. 1) ссылка на внешний класс имеет вид   имя_внешнего_класса.this   Для получения доступа из внутреннего класса к экземпляру его внешнего класса необходимо в ссылке указать имя класса и ключевое слово this, поставив между ними точку (например, OuterClass.this). Ключевое слово this обеспечивает доступ к потенциально спрятанным методам и полям, в которых внутренние и внешние классы используют метод или переменную с одинаковыми именами.

Слайд 187





Внутренние классы. Inner (нестатические)
Например, в следующем определении класса и у внешнего и у внутреннего классов присутствует переменная count. Для получения доступа к переменной внешнего класса, необходимо в ссылке на переменную перед ее именем приписать префикс this и имя внешнего класса.
Описание слайда:
Внутренние классы. Inner (нестатические) Например, в следующем определении класса и у внешнего и у внутреннего классов присутствует переменная count. Для получения доступа к переменной внешнего класса, необходимо в ссылке на переменную перед ее именем приписать префикс this и имя внешнего класса.

Слайд 188





Внутренние классы. Inner (нестатические). Example 49
package _java._se._01._innerclasses.inner.outer12;
class OuterClass {
  int count = 0;
  class InnerClass {
    int count = 10000;
    public void display() {
	System.out.println("Outer: " + OuterClass.this.count);
	System.out.println("Inner: " + count);
    }
  }
}
Описание слайда:
Внутренние классы. Inner (нестатические). Example 49 package _java._se._01._innerclasses.inner.outer12; class OuterClass { int count = 0; class InnerClass { int count = 10000; public void display() { System.out.println("Outer: " + OuterClass.this.count); System.out.println("Inner: " + count); } } }

Слайд 189





Внутренние классы. Inner (нестатические)
Правила для внутренних классов 
2) конструктор внутреннего класса можно создать явным способом
 
ссылка_на_внешний_объект.new конструктор_внутренего_класса([параметры]);
Описание слайда:
Внутренние классы. Inner (нестатические) Правила для внутренних классов 2) конструктор внутреннего класса можно создать явным способом   ссылка_на_внешний_объект.new конструктор_внутренего_класса([параметры]);

Слайд 190





Вложенные классы. Nested (статические). Example 50
Статический вложенный класс для доступа к нестатическим членам и методам внешнего класса должен создавать объект внешнего класса
Описание слайда:
Вложенные классы. Nested (статические). Example 50 Статический вложенный класс для доступа к нестатическим членам и методам внешнего класса должен создавать объект внешнего класса

Слайд 191





Вложенные классы. Nested (статические). Example 51
Вложенный класс имеет доступ к статическим полям и методам внешнего класса
Описание слайда:
Вложенные классы. Nested (статические). Example 51 Вложенный класс имеет доступ к статическим полям и методам внешнего класса

Слайд 192





Вложенные классы. Nested (статические). Example 52
Статический метод вложенного класса вызывается при указании полного относительного пути к нему
Описание слайда:
Вложенные классы. Nested (статические). Example 52 Статический метод вложенного класса вызывается при указании полного относительного пути к нему

Слайд 193





Вложенные классы. Nested (статические). Example 53
Подкласс вложенного класса не наследует возможность доступа к членам внешнего класса, которым наделен его суперкласс
Описание слайда:
Вложенные классы. Nested (статические). Example 53 Подкласс вложенного класса не наследует возможность доступа к членам внешнего класса, которым наделен его суперкласс

Слайд 194





Вложенные классы. Nested (статические). Example 53
Описание слайда:
Вложенные классы. Nested (статические). Example 53

Слайд 195





Вложенные классы. Nested (статические). Example 54
Класс, вложенный в интерфейс, статический по умолчанию
Описание слайда:
Вложенные классы. Nested (статические). Example 54 Класс, вложенный в интерфейс, статический по умолчанию

Слайд 196





Вложенные классы. Nested (статические). Example 55
Вложенный класс может быть базовым, производным, реализующим интерфейсы
Описание слайда:
Вложенные классы. Nested (статические). Example 55 Вложенный класс может быть базовым, производным, реализующим интерфейсы

Слайд 197





Вложенные классы. Nested (статические). Example 55
Описание слайда:
Вложенные классы. Nested (статические). Example 55

Слайд 198





Анонимные классы. Anonymous
Анонимный класс расширяет другой класс или реализует внешний интерфейс при объявлении одного единственного объекта; остальным будет соответствовать реализация, определенная в самом классе
Описание слайда:
Анонимные классы. Anonymous Анонимный класс расширяет другой класс или реализует внешний интерфейс при объявлении одного единственного объекта; остальным будет соответствовать реализация, определенная в самом классе

Слайд 199





Анонимные классы. Anonymous. Example 56
Описание слайда:
Анонимные классы. Anonymous. Example 56

Слайд 200





Анонимные классы. Anonymous. Example 57
Объявление анонимного класса выполняется одновременно с созданием его объекта с помощью операции new
Описание слайда:
Анонимные классы. Anonymous. Example 57 Объявление анонимного класса выполняется одновременно с созданием его объекта с помощью операции new

Слайд 201





Анонимные классы. Anonymous 
Конструкторы анонимных классов ни определить, ни переопределить нельзя
Описание слайда:
Анонимные классы. Anonymous Конструкторы анонимных классов ни определить, ни переопределить нельзя

Слайд 202





Анонимные классы. Anonymous. Example 58
Описание слайда:
Анонимные классы. Anonymous. Example 58

Слайд 203





Анонимные классы. Anonymous. Example 59
Анонимные классы допускают вложенность друг в друга
Описание слайда:
Анонимные классы. Anonymous. Example 59 Анонимные классы допускают вложенность друг в друга

Слайд 204





Анонимные классы. Anonymous. Example 59
Описание слайда:
Анонимные классы. Anonymous. Example 59

Слайд 205





Анонимные классы. Anonymous. Example 60
Объявление анонимного класса в перечислении отличается от простого анонимного класса, поскольку инициализация всех элементов происходит при первом обращении к типу
Описание слайда:
Анонимные классы. Anonymous. Example 60 Объявление анонимного класса в перечислении отличается от простого анонимного класса, поскольку инициализация всех элементов происходит при первом обращении к типу

Слайд 206





Анонимные классы. Anonymous. Example 60
Описание слайда:
Анонимные классы. Anonymous. Example 60

Слайд 207





Документирование кода (javadoc)
Описание слайда:
Документирование кода (javadoc)

Слайд 208





Javadoc. Основание для ведения документации
Возобновление работы над проектом после продолжительного перерыва
Переход проекта от одного человека (группы) к другому человеку (группе)
Опубликование проекта для Open Source сообщества
Совместная работа большой группы людей над одним проектом
Описание слайда:
Javadoc. Основание для ведения документации Возобновление работы над проектом после продолжительного перерыва Переход проекта от одного человека (группы) к другому человеку (группе) Опубликование проекта для Open Source сообщества Совместная работа большой группы людей над одним проектом

Слайд 209





Javadoc. Требования к документам
Не документировать очевидные вещи (setter’ы и getter’ы, циклы по массивам и листам, вывод логов и прочее)
Описание слайда:
Javadoc. Требования к документам Не документировать очевидные вещи (setter’ы и getter’ы, циклы по массивам и листам, вывод логов и прочее)

Слайд 210





Javadoc. Требования к документам
Поддерживать документацию в актуальном состоянии
Описание слайда:
Javadoc. Требования к документам Поддерживать документацию в актуальном состоянии

Слайд 211





Javadoc. Требования к документам
Описывать входящие параметры, если нужно
Описание слайда:
Javadoc. Требования к документам Описывать входящие параметры, если нужно

Слайд 212





Javadoc. Синтаксис javadoc-комментария
Обыкновенный комментарий
/* Calculates the factorial */
int factorial(int x) {
…
Javadoc-комментарий (он может включать в себя HTML тэги и специальные javadoc тэги, которые позволяют включать дополнительную информацию и ссылки)
/** Calculates the factorial */
public double factorial(int x) {
Описание слайда:
Javadoc. Синтаксис javadoc-комментария Обыкновенный комментарий /* Calculates the factorial */ int factorial(int x) { … Javadoc-комментарий (он может включать в себя HTML тэги и специальные javadoc тэги, которые позволяют включать дополнительную информацию и ссылки) /** Calculates the factorial */ public double factorial(int x) {

Слайд 213





Javadoc. Структура javadoc-комментария
Структура каждого javadoc-комментария такова:
первая строчка, которая попадает в краткое описание класса (отделяется точкой и пустой строкой);
основной текст, который вместе с HTML тэгами копируется в основную документацию;
входящие параметры (если есть);
выбрасываемые исключения (если есть);
возвращаемое значение (если есть);
служебные javadoc-тэги.
Описание слайда:
Javadoc. Структура javadoc-комментария Структура каждого javadoc-комментария такова: первая строчка, которая попадает в краткое описание класса (отделяется точкой и пустой строкой); основной текст, который вместе с HTML тэгами копируется в основную документацию; входящие параметры (если есть); выбрасываемые исключения (если есть); возвращаемое значение (если есть); служебные javadoc-тэги.

Слайд 214





Javadoc. Структура javadoc-комментария
Описание слайда:
Javadoc. Структура javadoc-комментария

Слайд 215





Javadoc. Типы тегов
Блочные теги
Начинается с @tag и оканчивается с началом следующего тега
Пример
@param x a value
Строчные теги
Ограничены фигурными скобками
Могут встречаться в теле других тегов
Пример
Use a {@link java.lang.Math#log} for positive numbers.
Описание слайда:
Javadoc. Типы тегов Блочные теги Начинается с @tag и оканчивается с началом следующего тега Пример @param x a value Строчные теги Ограничены фигурными скобками Могут встречаться в теле других тегов Пример Use a {@link java.lang.Math#log} for positive numbers.

Слайд 216





Javadoc. Тег @param
Описывает параметров методов и конструкторов
Синтаксис
@param <имя параметра> <описание>
Пример
@param x a value
Описание слайда:
Javadoc. Тег @param Описывает параметров методов и конструкторов Синтаксис @param <имя параметра> <описание> Пример @param x a value

Слайд 217





Javadoc. Тег @return
Описывает возвращаемое значение метода
Синтаксис
@return <описание>
Пример
@return the factorial of <code>x</code>
Описание слайда:
Javadoc. Тег @return Описывает возвращаемое значение метода Синтаксис @return <описание> Пример @return the factorial of <code>x</code>

Слайд 218





Javadoc. Тег @throws
Описывает исключения, генерируемые методом/конструктором
Синтаксис
@throws <класс исключения> <описание>
Пример
@throws IllegalArgumentException if <code>x</code> is less than zero
Описание слайда:
Javadoc. Тег @throws Описывает исключения, генерируемые методом/конструктором Синтаксис @throws <класс исключения> <описание> Пример @throws IllegalArgumentException if <code>x</code> is less than zero

Слайд 219





Javadoc. Тэг @see
Ссылка на дополнительную информацию
Синтаксис
@see <имя класса>
@see [<имя класса>]#<имя члена>
@see "<Текст ссылки>"
Примеры
@see Math#log10
@see "The Java Programming language Specifiecation, p. 142"
Описание слайда:
Javadoc. Тэг @see Ссылка на дополнительную информацию Синтаксис @see <имя класса> @see [<имя класса>]#<имя члена> @see "<Текст ссылки>" Примеры @see Math#log10 @see "The Java Programming language Specifiecation, p. 142"

Слайд 220





Javadoc. Тэг @version
Текущая версия класса/пакета
Синтаксис
@version <описание версии>
Пример
@version 5.0
Описание слайда:
Javadoc. Тэг @version Текущая версия класса/пакета Синтаксис @version <описание версии> Пример @version 5.0

Слайд 221





Javadoc. Тег @since
Версия в которой была добавлена описываемая сущность
Синтаксис
@since <описание версии>
Пример
@since 5.0
Описание слайда:
Javadoc. Тег @since Версия в которой была добавлена описываемая сущность Синтаксис @since <описание версии> Пример @since 5.0

Слайд 222





Javadoc. Тэг @deprecated
Помечает возможности, которые не следует использовать
Синтаксис
@deprecated <комментарий>
Пример
@deprecated replaced by {@link #setVisible}
Описание слайда:
Javadoc. Тэг @deprecated Помечает возможности, которые не следует использовать Синтаксис @deprecated <комментарий> Пример @deprecated replaced by {@link #setVisible}

Слайд 223





Javadoc. Тэг @author
Описывает автора класса/пакета
Синтаксис
@author <имя автора>
Пример
@author  Josh Bloch
@author  Neal Gafter
Описание слайда:
Javadoc. Тэг @author Описывает автора класса/пакета Синтаксис @author <имя автора> Пример @author Josh Bloch @author Neal Gafter

Слайд 224





Javadoc. Тэг {@link}
Ссылка на другую сущность
Синтаксис
{@link <класс>#<член> <текст>}
Примеры
{@link java.lang.Math#Log10 Decimal Logarithm}
{@link Math}
{@link Math#Log10}
{@link #factorial() calculates factorial}
Описание слайда:
Javadoc. Тэг {@link} Ссылка на другую сущность Синтаксис {@link <класс>#<член> <текст>} Примеры {@link java.lang.Math#Log10 Decimal Logarithm} {@link Math} {@link Math#Log10} {@link #factorial() calculates factorial}

Слайд 225





Javadoc. Тэг {@docRoot}
Заменяется на ссылку на корень документации
Синтаксис
{@docRoot}
Пример
<a href="{@docRoot}/copyright.html">Copyright</a>
Описание слайда:
Javadoc. Тэг {@docRoot} Заменяется на ссылку на корень документации Синтаксис {@docRoot} Пример <a href="{@docRoot}/copyright.html">Copyright</a>

Слайд 226





Javadoc. Тэг {@value}
Заменяется на значение поля
Синтаксис
{@value <имя класса>#<имя поля>} 
Пример
Default value is {@value #DEFAULT_TIME}
Описание слайда:
Javadoc. Тэг {@value} Заменяется на значение поля Синтаксис {@value <имя класса>#<имя поля>} Пример Default value is {@value #DEFAULT_TIME}

Слайд 227





Javadoc. Тэг {@code}
Предназначен для вставки фрагментов кода
Внутри тэга HTML не распознается
Синтаксис
{@code <код>} 
Пример
Is equivalent of {@code Math.max(a, b)}.
Описание слайда:
Javadoc. Тэг {@code} Предназначен для вставки фрагментов кода Внутри тэга HTML не распознается Синтаксис {@code <код>} Пример Is equivalent of {@code Math.max(a, b)}.

Слайд 228





Javadoc. Описание пакета
Есть возможность применять комментарии для пакетов. Для этого необходимо поместить файл package.html в пакет с исходными текстами.
Данный файл должен быть обычным HTML-файлом с тегом <body>.
Первая строчка файла до точки идет в краткое описание пакета, а полное идет вниз – под список всех классов и исключений.
Этот функционал позволяет описать что-то, что невозможно описать с помощью конкретных классов.
Описание слайда:
Javadoc. Описание пакета Есть возможность применять комментарии для пакетов. Для этого необходимо поместить файл package.html в пакет с исходными текстами. Данный файл должен быть обычным HTML-файлом с тегом <body>. Первая строчка файла до точки идет в краткое описание пакета, а полное идет вниз – под список всех классов и исключений. Этот функционал позволяет описать что-то, что невозможно описать с помощью конкретных классов.

Слайд 229





Javadoc. Применение тегов
Описание слайда:
Javadoc. Применение тегов

Слайд 230





Javadoc. Наследование Javadoc
Если какая-то часть информации о методе не указана, то описание копируется у ближайшего предка.
Копируемая информация:
Описание
@param
@returns
@throws
Описание слайда:
Javadoc. Наследование Javadoc Если какая-то часть информации о методе не указана, то описание копируется у ближайшего предка. Копируемая информация: Описание @param @returns @throws

Слайд 231





Javadoc. Компиляция Javadoc
Инструмент
Javadoc
Применение
javadoc <опции> <список пакетов> <список файлов>
Пример
javadoc JavadocExample1.java
Описание слайда:
Javadoc. Компиляция Javadoc Инструмент Javadoc Применение javadoc <опции> <список пакетов> <список файлов> Пример javadoc JavadocExample1.java

Слайд 232





Javadoc. Основные опции Javadoc
Описание слайда:
Javadoc. Основные опции Javadoc

Слайд 233





Javadoc. Example 61
Описание слайда:
Javadoc. Example 61

Слайд 234





Javadoc. Example 61
	/**
	* Произвести запись нового объекта.
	*
	* Произвести запись нового объекта. Тип для сохранения может быть
	*	подклассом List (для реализации возможности работы с несколькими
	*	объектами) или единичным объектом. В случае если произошла какая-либо
	*	ошибка - выбрасывается исключение. В данном случае с базой не происходит
	*	никаких изменений и ни один объект не был затрагивается предполагаемой
	*	операцией. Конкретный тип ошибки можно определить проверкой конкретного
	*	возвращённого исключения.
	*	@param object
	*	сохраняемый объект/объекты.
	*	@return сохраненный объект/объекты
	*	@throws XmlMagnetException ошибка в процессе парсинга XML
	*	@throws EntityManagerException ошибка связанная с другой работой клиента
	*/
	public Object insert(Object object) throws XmlMagnetException,
	EntityManagerException { return new Object(); }
}
Описание слайда:
Javadoc. Example 61 /** * Произвести запись нового объекта. * * Произвести запись нового объекта. Тип для сохранения может быть * подклассом List (для реализации возможности работы с несколькими * объектами) или единичным объектом. В случае если произошла какая-либо * ошибка - выбрасывается исключение. В данном случае с базой не происходит * никаких изменений и ни один объект не был затрагивается предполагаемой * операцией. Конкретный тип ошибки можно определить проверкой конкретного * возвращённого исключения. * @param object * сохраняемый объект/объекты. * @return сохраненный объект/объекты * @throws XmlMagnetException ошибка в процессе парсинга XML * @throws EntityManagerException ошибка связанная с другой работой клиента */ public Object insert(Object object) throws XmlMagnetException, EntityManagerException { return new Object(); } }

Слайд 235





Javadoc. Example 61
Описание слайда:
Javadoc. Example 61

Слайд 236





Ihar Blinou, PhD
Java.SE.01
Java Fundamentals
Описание слайда:
Ihar Blinou, PhD Java.SE.01 Java Fundamentals



Похожие презентации
Mypresentation.ru
Загрузить презентацию