|
Първи стъпки в програмирането на JAVA
//Интро В тази статия(или по точон някакъв текстов материал ;)) ще стане дума как да започнем да пише малки JAVA програми. Ще разберем какви „продукти“ са ни нужни за да можем да пишеш „програмите“(много е силно да се каже програми :), но все пак всяко парче код което върши работа е програма нали?), които ще разгледаме след малко. //Продукти За начало нека да приготвим „нужните продукти“. С тях ще се сдобиете от http://java.sun.com/j2se/1.5.0/download.jsp (това е най-новата версия в момента на писане на статията – поне така пише на сайта ан Sun). Тъй като на мене постояно ми дава грешки(предполагам то доставчика, а не от сайта на SUN) си намерих jdk-1_5_0_06-windows-i586-p.exe(59.86МБ), което включва JDK 5.0 без NetBeans IDE. Като за начало ви препоръчвам да си свалите JCreator LE(2,19МБ) от http://www.jcreator.com/ - това е безплатно IDE, леко е и върши работа за обучение. Инсталирането става лесно, просто следвате екраните, които ви показва инсталатора(ако инсталирате на принципа NEXT NEXT FINISH всичко ще работи). //Преди началото Преди да започнем с примерите ще се запознаем как трябва да е структуриран един java файл, както и ще се запознаем със синтаксиса. В началото трябва да окажем кои библиотеки ще ползваме в кода на програмата. Това става с помща на import Библиотека. (пример: import java.net.*;). След като сме указали, кои библиотеки ще ползваме следват класовете(може да бъде и един), които изграждат програмата. Както във всички езици и в JAVA има служебни думи – това са думи, които можете да ползвате само по-предназнечението определено от SUN(в случая :)). Примерно не можете да имате променлива с име import, защото това е служебна дума за зареждане на библиотеки. Подобни служебни думи са class, for, if, while, var (на базта на незнаението ми на JAVA мога да спомена тези :)), ето и адрес със запазените думи: http://home.cogeco.ca/~ve3ll/jatutorx.htm в този език. Един клас е съставен от методи и променливи: CODE
Вместо да продалжавам да описам синтаксиса на езика, нека да преминем към примерите така би станало по ясно от колкото „изсипване“ на теория от моя гледна точка. Повече за синтаксиса можете да научте от документацията на езика, която можете да намерите на сайта на SUN -> http://sun.com. Пример 01 – ще стане дума за писане във файл, ползване на регулярни изрази, четене на файл от URL адрес, извеждане на данни в конзола. Нека да не губим повече време в излишни приказки, а да минем към програмта. Това е целия код на програма, която чете дадена интернет страница като от нея извежда на екрана всички е-мейл адреси, които е намерил на базата на регулярен израз и освен това ги записва в текстов файл – всеки майл на нов ред. CODE
Сега нека да разгледаме кода на части. В началото зареждаме библиотеките, които са ни нужни: java.io.*; java.net.*; java.util.regex.*. В тях се намират всички класове и методи, които ще ползваме по късно в програмта. Ако пропуснем да заредим някоя библиотека програмата ни няма да може да проработи. След това следва блок коментар(какво да се прави стил на писане). Освен /* блок */, може да коментираме редове като ползваме //Коментар. Името класът ZadachaRegExpMails трябва и да е име на файла – нямам си идея защо, просто една от осбедностите на JAVA Ако името не е същото просто файла няма да се компилира. Както се вижда от кода нямаме никакви методи, само main() който всъщност е самата прогрма. Като параметри приема масив от тип стринг(букви, знаци, числа). Конструкцията if/else е както при всички езици: ако условието е изпълнено(true) изпълнява часта код след if, ако не изпълнява тялото на else. В случая проверявам дали има подадени някакви данни, ако няма извежда съобщение, че не е въведено нищо и следва край на програмта. Try/catch – с помоща на тази „конструкция“ прихващяме всички изключения, които ни връща кода(да кажем проблем при писането във файл). Във документацията е описано, кой-какво изключение може да „хвърли“ като по този начин образуваме поредицата от catch. В тялото на catch може да изведем съобщение за грешка като ползваме System.err.println(„text“);. Може и да ползваме стандартния изход System.out.println(„text“);, работи безотказно :), но щом е измислно има някаква цел(но и да не забравяме че това е JAVA ;)).
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||










От тази година в първи курс (той е общ за 5-6 специалности) във въведение в информатиката трябва да им се говори малко за теория на автоматите и приложенията, та магистрите, които работим в лабораторията към катедрата сме решили да направим нещо като игра написана JAVA в която се строят автомати, разпознаващи езика описан от даден регулярен израз и да се извършват разни действия като конкатениране, обединение, емондиране, детерминиране и т.н.