Алгоритм изучения Java?
Не слушай тех, кто говорит, что Java сложен для первого яп.Синтаксис очень читабелен и нету заморочек и ловушек насчет памяти.А по теме, в  любой области опыт набирается методом проб и ошибок, главное просто начать(стабильность - признак мастерства). Начинать стоит с "копи-пасты" смотришь - повторяешь.Потом прощупав как оно там методом тыка(все этим постигается) и офигеть от своей тупости(когда я это осознал, мир в моих глазах "перевернулся") начинаешь пытаться сам.С самого начала,конечно,будет кошмар,но нужно просто каждый день писать,смотреть, читать.Увы, но идеального и быстрого способа прокачаться нету, все и вся достигается трудом и потом.
Я начал с изучения AS3, по факту очень-очень похоже на java (код почти сразу читается как родной при переходе), но позволяет быдлокодить жестко, с одной стороны это конечно плохо, но позволяет перенести кашу из головы в что-то работающее, а как задание становится сложнее "2+2", приходится все писать через ООП, иначе будете 1 час разбираться в коде, чтобы написать 2 строчки.