Java Programming Masterclass covering Java 11 & Java 17
You’ve just stumbled upon the most complete, in-depth Java programming course online. With over 260,000 students enrolled and tens of thousands of 5 star reviews to date, these comprehensive java tutorials cover everything you’ll ever need.
More
Whether you want to:
- build the skills you need to get your first Java programming job
- move to a more senior software developer position
- pass the oracle java certification exam
- or just learn java to be able to create your own java apps quickly.
...this complete Java Masterclass is the course you need to do all of this, and more.
Are you aiming to get your first Java Programming job but struggling to find out what skills employers want and which course will give you those skills?
This course is designed to give you the Java skills you need to get a job as a Java developer. By the end of the course you will understand Java extremely well and be able to build your own Java apps and be productive as a software developer.
Lots of students have been success with getting their first job or a promotion after going through the course.
Here is just one example of a student who lost her job and despite having never coded in her life previously, got a full time software developer position in just a few months after starting this course. She didn't even complete the course!
"Three months ago I lost my job, came to a turning point in my life, and finally made the drastic decision to completely change course. I decided to switch career path and go into coding. My husband found and gave me your Complete Java Masterclass at Udemy as a gift, and I wholeheartedly dove into it as a life line. Following your course has been absolutely enjoyable (still working on it, not yet finished), and has been a great way of keeping on course, dedicated and motivated. Yesterday, three months after starting the course and honestly to my surprise, I received (and accepted!) a job offer as a full-time developer. I wanted to just drop you a line to say thank you for doing this work, for being such a dedicated teacher, and for putting all this knowledge available out there in such an approachable way. It has, literally, been life changing. With gratitude, Laura"
The course is a whopping 76 hours long. Perhaps you have looked at the size of the course and are feeling a little overwhelmed at the prospect of finding time to complete it. Maybe you are wondering if you need to go through it all?
Firstly, Laura's story above shows that you do not have to complete the entire course - she was yet to complete the course when she accepted her developer job offer.
Secondly, the course is designed as a one stop shop for Java.
The core java material you need to learn java development is covered in the first seven sections (around 14 hours in total). The Java Basics are covered in those sections. The rest of the course covers intermediate, advanced and optional material you do not technically need to go through.
For example section 13 is a whopping 10 hours just by itself and is aimed at those students who want to build desktop applications with graphical user interfaces. JavaFX (which is the technology used in this section) is something that most java developers will rarely or never need to work on. So you could skip that section entirely. But if you are one of the few that need to build user interfaces, then the content is there and ready for you. And there are other sections you can completely avoid if you wish.
If you want to know absolutely everything about Java, then you can go through the entire course if you wish, but it's not necessary to do so if you are just looking to learn the essential information to get a java developer position.
Why would you choose to learn Java?
The reality is that there is a lot of computer languages out there. It's in the hundreds. Why would you choose the Java language?
The number one reason is its popularity. According to many official websites that track popularity of languages, Java is either #1 or in the top 3. Popularity means more companies and their staff are using it, so there are more career opportunities available for you if you are skilled in the language.
The last thing you want to do is pick a language that is not in mainstream use. Java came out in the 1990's and is still very popular today.
What version of Java should you learn?
Generally speaking you would want to learn the very latest version of a computer programming language, but thats not necessarily the case with Java.
Until recently Java releases were infrequent (one major release in 3 years was common). Companies standardised on specific versions of Java. Right now most companies are still focused on Java 8, which is a relatively old version, dating back to 2015.
Oracle (the owners of Java) are now releasing new versions of Java every six months, and when the new version comes out the old version is no longer supported.
But to cater for most companies who tend to stick to specific versions of Java for a long time, they have marked the current version of Java - Java 11 as LTS - or Long Term support. That means that they guarantee to support this version for the long term - for a number of years at least.
Companies will stick to versions of Java that are supported in the long term. For career purposes you should learn the appropriate versions of Java that your future employer will likely be using. Right now thats Java 8 and Java 11 (Java 9 and Java 10 have been released and already been marked obsolete and are no longer supported).
The good news is that this course is focused on Java 8, and has recently been updated for Java 11.
Will this course give me core java skills?
Yes it will. Core Java is the fundamental parts of the java jdk (the java development kit) that programmers need to learn to move onto other more advanced technologies.
Why should you take this course?
It's been a best seller since it's release on Udemy, you would be joining over 260,000 students who are already enrolled in the course.
There are close to 60,000 reviews left by students. It's rated as the best course to learn Java for beginners.
What makes this course a bestseller?
Like you, thousands of others were frustrated and fed up with fragmented Youtube tutorials or incomplete or outdated courses which assume you already know a bunch of stuff, as well as thick, college-like textbooks able to send even the most caffeine-fuelled coder to sleep.
Like you, they were tired of low-quality lessons, poorly explained topics and all-round confusing info presented in the wrong way. That’s why so many find success in this complete Java developer course. It’s designed with simplicity and seamless progression in mind through its content.
This course assumes no previous coding experience and takes you from absolute beginner core concepts, like showing you the free tools you need to download and install, to writing your very first Java program. You will learn the core java skills you need to become employable in around 14 hours, and if you choose to, can take advantage of all the additional content in the course. It's a one stop shop to learn java. If you want to go beyond the core content you can do so at any time.
Here’s just some of what you’ll learn
(It’s okay if you don’t understand all this yet, you will in the course)
All the essential Java keywords, operators, statements, and expressions needed to fully understand exactly what you’re coding and why - making programming easy to grasp and less frustrating
You will learn the answers to questions like What is a Java class, What is polymorphism and inheritance and to apply them to your java apps.
How to safely download and install all necessary coding tools with less time and no frustrating installations or setups
Complete chapters on object-oriented programming and many aspects of the Java API (the protocols and tools for building applications) so you can code for all platforms and derestrict your program’s user base (and potential sales)
How to develop powerful Java applications using one of the most powerful Integrated Development Environments on the market, IntelliJ IDEA! - Meaning you can code functional programs easier. IntelliJ has both a FREE and PAID version, and you can use either in this course.
(Don’t worry if you’re used to using Eclipse, NetBeans or some other IDE. You’re free to use any IDE and still get the most out of this course)
Learn Java to a sufficient level to be a be to transition to core Java technologies like Android development, the Spring framework, Java EE (Enterprise edition) in general as well as and other technologies. In order to progress to these technologies you need to first learn core Java - the fundamental building blocks. That's what this course will help you to achieve.
“AP-what?”
Don't worry if none of that made sense. I go into great detail explaining each and every core concept, programming term, and buzzwords you need to create your own Java programs.
This truly is Java for complete beginners.
By the end of this comprehensive course, you’ll master Java programming no matter what level of experience you’re at right now. You’ll understand what you are doing, and why you are doing it. This isn’t a recipe book, you’ll use your own creativity to make unique, intuitive programs.
Not only do these HD videos show you how to become a programmer in great detail, but this course includes a unique challenge feature. Each time a core concept is taught, a video presents a challenge for you to help you understand what you have just learned in a real world scenario.
You’ll go and complete the challenge on your own, then come back and see the answers which I then explain in detail in a video, allowing you to check your results and identify any areas you need to go back and work on.
This is a proven way to help you understand Java faster and ensure you reach your goal of becoming a Java Developer in record time. Remember doing those old past exam papers in high school or college? It’s the same concept, and it works.
As your instructor, I have over 35 years experience as a software developer and teacher and have been using Java since the year 2000. Yes, over 18 years (I’ve taught students younger than that). Meaning not only can I teach this content with great simplicity, but I can make it fun too!
It’s no surprise my previous students have amazing results...
See what your fellow students have to say:
"This course was a guiding light in my "Becoming a developer" path from the first step. It helped me become a much more educated developer comparing to my friend who learned to code from trial/error. It's still a guide for me. every now and then I will come back to this course to learn something new or to improve what I've learned somewhere else. A BIG Thanks to "Tim Buchalka" my Master." - Sina Jz
"I was an absolute beginner when I started this course, and now I can write some good small advanced clean codes. I wrote a code and showed it to a programmer, and he was shocked, he told me that I'm more than ready to start a programming career." - Amirreza Moeini
"I am taking this class in conjunction with a Java 101 college class. I have learned more in one afternoon of videos from this class than I have in 4 weeks of college class. Tim actually explains what things are and why they do what they do, as opposed to my college instructor that mainly said "go make a program that does *whatever*" and then I had to figure out a program that would meet those requirements but not actually learning why it worked." - Stacy Harris
It’s safe to say my students are thrilled with this course, and more importantly, their results, and you can be too…
This complete Java course will teach you everything you need to know in order to code awesome, profitable projects,
- A computer with either Windows, Mac or Linux to install all the free software and tools needed to build your new apps (I provide specific videos on installations for each platform).
- A strong work ethic, willingness to learn, and plenty of excitement about the awesome new programs you’re about to build.
- Nothing else! It’s just you, your computer and your hunger to get started today.
- This course is perfect for absolute beginners with no previous coding experience, to intermediates looking to sharpen their skills to the expert level.
- Those looking to build creative and advanced Java apps for either personal use or for high-paying clients as a self-employed contractor.
- Those who love letting their own creative genius shine, whilst getting paid handsome amounts to do so.
What you'll learn:
- Learn the core Java skills needed to apply for Java developer positions in just 14 hours.
- Be able to sit for and pass the Oracle Java Certificate exam if you choose.
- Be able to demonstrate your understanding of Java to future employers.
- Learn industry "best practices" in Java software development from a professional Java developer who has worked in the language for 18 years.
- Acquire essential java basics for transitioning to the Spring Framework, Java EE, Android development and more.
Watch Online Java Programming Masterclass covering Java 11 & Java 17
# | Title | Duration |
---|---|---|
1 | Introduction To The Course | 02:28 |
2 | Remaster in Progress | 03:10 |
3 | Video Quality | 01:17 |
4 | Subtitles | 02:47 |
5 | How to Get Help | 04:55 |
6 | Important Tip - Source Code | 02:08 |
7 | Biggest Tip to Succeed as a Java Programmer | 01:16 |
8 | Software Tools Introduction | 01:13 |
9 | Java Development Kit Installation Overview | 01:43 |
10 | Install JDK 11 for Windows | 02:25 |
11 | Installing Intellij IDEA for Windows | 04:42 |
12 | Install JDK 11 for Mac | 02:12 |
13 | Installing Intellij IDEA for Mac | 04:58 |
14 | Install JDK 11 for Linux | 04:34 |
15 | Installing Intellij IDEA for Linux | 05:23 |
16 | Configure IntelliJ IDEA | 03:33 |
17 | Introduction | 01:19 |
18 | Hello World Project | 06:37 |
19 | Defining the Main Method | 07:21 |
20 | Hello World Challenge and Common Errors | 03:19 |
21 | Variables | 09:04 |
22 | Starting out with Expressions | 07:06 |
23 | Primitive Types | 11:37 |
24 | byte, short, long and width | 10:19 |
25 | Casting in Java | 04:07 |
26 | Primitive Types Challenge | 04:24 |
27 | float and double Primitive Types | 07:01 |
28 | Floating Point Precision and a Challenge | 10:23 |
29 | The char and boolean Primitive Data Types | 10:21 |
30 | Primitive Types Recap and the String Data Type | 12:57 |
31 | Operators, Operands and Expressions | 08:51 |
32 | Abbreviating Operators | 04:13 |
33 | if-then Statement | 09:17 |
34 | Logical and Operator | 06:25 |
35 | Logical OR Operator | 06:12 |
36 | Assignment Operator VS Equals to Operator | 07:32 |
37 | Ternary Operator | 04:11 |
38 | Operator Precedence and Operator Challenge | 11:45 |
39 | First Steps Summary | 01:30 |
40 | End of Remaster | 02:02 |
41 | Introduction | 00:32 |
42 | Keywords And Expressions | 07:19 |
43 | Statements, Whitespace and Indentation (Code Organization) | 09:25 |
44 | Code Blocks And The If Then Else Control Statements | 17:09 |
45 | if then else Recap | 04:20 |
46 | Methods In Java | 18:02 |
47 | More On Methods And A Challenge | 15:35 |
48 | Method Challenge - Final Code Changes | 07:28 |
49 | DiffMerge Tool Introduction | 01:55 |
50 | Install DiffMerge | 02:02 |
51 | Using DiffMerge | 17:30 |
52 | Coding Exercises | 13:25 |
53 | Coding Exercises Example Part 1 | 11:09 |
54 | Coding Exercises Example Part 2 | 11:54 |
55 | Coding Exercises Example Part 3 | 09:52 |
56 | Method Overloading | 27:02 |
57 | Method Overloading Recap | 03:39 |
58 | Seconds and Minutes Challenge | 13:50 |
59 | Bonus Challenge Solution | 11:13 |
60 | Introduction | 00:39 |
61 | The switch statement (+Challenge Exercise) | 19:33 |
62 | Day of the Week Challenge | 10:48 |
63 | The for Statement (+Challenge Exercise) | 25:03 |
64 | For Loop Recap | 08:00 |
65 | Sum 3 and 5 Challenge | 06:14 |
66 | The while and do while statements (+Challenge Exercise) | 24:22 |
67 | While and Do While Recap | 07:59 |
68 | Digit Sum Challenge | 10:30 |
69 | Parsing Values from a String | 11:25 |
70 | Reading User Input | 12:27 |
71 | Problems and Solutions | 10:21 |
72 | Reading User Input Challenge | 15:07 |
73 | Min and Max Challenge | 15:33 |
74 | Introduction | 00:37 |
75 | Classes Part 1 | 16:32 |
76 | Classes Part 2 | 13:28 |
77 | Constructors - Part 1 (+Challenge Exercise) | 20:11 |
78 | Constructors - Part 2 (+Challenge Exercise) | 16:01 |
79 | Inheritance - Part 1 | 19:40 |
80 | Inheritance - Part 2 | 13:25 |
81 | Reference vs Object vs Instance vs Class | 06:53 |
82 | this vs super | 06:53 |
83 | Method Overloading vs Overriding Recap | 07:33 |
84 | Static vs Instance Methods | 04:11 |
85 | Static vs Instance Variables | 04:18 |
86 | Inheritance Challenge Part 1 (+Challenge Exercise) | 16:39 |
87 | Inheritance Challenge Part 2 | 10:05 |
88 | Introduction | 00:38 |
89 | Composition | 17:20 |
90 | Composition Part 2 (+Challenge Exercise) | 14:18 |
91 | Encapsulation | 19:24 |
92 | Encapsulation (+Challenge Exercise) | 15:16 |
93 | Polymorphism | 20:36 |
94 | Polymorphism (+Challenge Exercise) | 18:47 |
95 | OOP Master Challenge Exercise | 16:42 |
96 | OOP Challenge - Solution | 16:47 |
97 | Arrays | 21:28 |
98 | Arrays (Challenge Exercise) | 16:21 |
99 | Arrays Recap | 07:20 |
100 | References Types vs Value Types | 16:14 |
101 | Minimum Element Challenge | 11:52 |
102 | Reverse Array Challenge | 10:32 |
103 | List and ArrayList Part 1 | 16:30 |
104 | ArrayList Part 2 | 20:12 |
105 | ArrayList Part 3 | 16:49 |
106 | ArrayList Challenge Part 1 | 14:01 |
107 | ArrayList Challenge Part 2 | 18:13 |
108 | ArrayList Challenge Part 3 | 10:50 |
109 | Bug Fix for ArrayList Challenge | 06:42 |
110 | Autoboxing and Unboxing | 16:17 |
111 | Autoboxing & Unboxing (Challenge Exercise) - Part 1 | 16:50 |
112 | Autoboxing & Unboxing (Challenge Exercise) - Part 2 | 17:09 |
113 | Autoboxing & Unboxing (Challenge Exercise) - Part 3 | 09:33 |
114 | LinkedList Part 1 | 16:44 |
115 | LinkedList Part 2 | 15:31 |
116 | LinkedList Part 3 | 20:47 |
117 | LinkedList Challenge Part 1 | 15:06 |
118 | Bug Fix for "Track 1" Error | 01:04 |
119 | LinkedList Challenge Part 2 | 17:21 |
120 | LinkedList Challenge Part 3 (Final video) | 15:46 |
121 | Interfaces | 12:35 |
122 | Interfaces Part 2 | 14:31 |
123 | Interfaces Challenge Part 1 | 18:12 |
124 | Interfaces Challenge Part 2 | 09:01 |
125 | Inner classes Part 1 | 17:11 |
126 | Inner Classes Part 2 | 14:45 |
127 | Inner Classes Challenge | 11:58 |
128 | Abstract Classes Part 1 | 16:43 |
129 | Abstract Classes Part 2 | 10:56 |
130 | Interface vs Abstract Class | 04:49 |
131 | Abstract Class Challenge Part 1 | 19:47 |
132 | Abstract Class Challenge Part 2 | 12:54 |
133 | Abstract Class Challenge Part 3 (includes recursion). | 19:47 |
134 | Generics Introduction | 11:13 |
135 | Our Generics Class | 11:38 |
136 | Our Generics Class Part 2 | 18:58 |
137 | Our Generics Class Part 3 | 10:14 |
138 | Generics Challenge | 13:09 |
139 | Naming Conventions | 07:10 |
140 | Packages | 17:41 |
141 | Packages Part 2 | 11:41 |
142 | Packages Part 3 | 12:06 |
143 | Packages (Challenge Exercise) | 13:29 |
144 | Scope | 17:26 |
145 | Scope Part 2 and Visibility | 12:08 |
146 | Scope +(Challenge Exercise) | 06:54 |
147 | Access Modifiers | 16:52 |
148 | The static statement | 12:33 |
149 | The final statement | 14:38 |
150 | Final Part 2 and Static Initializers | 09:02 |
151 | Collections Overview | 15:49 |
152 | Binary Search | 15:40 |
153 | Collections List Methods | 18:24 |
154 | Comparable and Comparator | 18:56 |
155 | Maps | 16:52 |
156 | Map Continued and Adventure Game | 16:34 |
157 | Adding Exits to the Adventure game | 18:05 |
158 | Adventure Game challenge | 08:14 |
159 | Immutable Classes | 15:43 |
160 | Immutable Class Challenge | 04:33 |
161 | Sets & HashSet | 19:53 |
162 | HashSet - equals() and hashCode() | 16:53 |
163 | Finish off equals() and hashcode() | 10:57 |
164 | Potential issue with equals() and sub-classing | 12:00 |
165 | Sets - Symmetric & Asymmetric | 15:35 |
166 | Finishing Off Sets | 09:17 |
167 | Sets Challenge Part 1 | 15:27 |
168 | Sets Challenge Part 2 | 12:51 |
169 | Sets Challenge Part 3 | 18:18 |
170 | Sorted Collections | 13:12 |
171 | StockList Class With Maps | 17:06 |
172 | Add a Basket | 15:50 |
173 | TreeMap and Unmodifiable Maps | 20:51 |
174 | Challenge Part 1 | 12:41 |
175 | Challenge Part 2 | 10:53 |
176 | Challenge Part 3 | 07:57 |
177 | Challenge Part 4 (Final) | 18:05 |
178 | JDK11 Global Library Configuration | 05:06 |
179 | Create Your First JavaFX Project | 06:01 |
180 | JavaFX Overview | 09:49 |
181 | JavaFX Hello World Program | 10:56 |
182 | GridPane Layout | 15:35 |
183 | HBox Layout | 13:12 |
184 | BorderPane Layout | 13:17 |
185 | Other Layouts | 17:10 |
186 | Controls | 15:18 |
187 | RadioButton and CheckBox | 17:03 |
188 | ComboBox and ChoiceBox | 17:14 |
189 | Slider, Spinner, ColorPicker & DatePicker Controls | 14:31 |
190 | TitledPane | 06:43 |
191 | Events and Event Handlers | 14:30 |
192 | Events Continued | 14:39 |
193 | UI Thread | 14:41 |
194 | Threads and Runnable | 16:19 |
195 | Setup Sample Todo List Application | 13:00 |
196 | Base Interface | 13:29 |
197 | Add Change Listener | 14:18 |
198 | Formatting Dates | 07:04 |
199 | Singletons | 15:05 |
200 | Load and Save ToDo Items from/to Disk | 16:26 |
201 | Add DialogPane | 16:32 |
202 | Show Dialog and Add Controller Code | 14:34 |
203 | Bug Fix and Update List View | 10:28 |
204 | Data Binding and Observable | 11:21 |
205 | Cell Factories | 14:45 |
206 | Context Menu | 15:38 |
207 | KeyEvents and Toolbars | 15:42 |
208 | SortedList | 12:45 |
209 | FilteredList | 16:19 |
210 | CSS With JavaFX | 17:40 |
211 | Transforming Nodes and Choosers | 16:38 |
212 | More on Choosers and Web Pages | 22:12 |
213 | SceneBuilder | 03:24 |
214 | Installing SceneBuilder for Windows | 05:01 |
215 | Installing SceneBuilder for Mac | 03:40 |
216 | Overview of SceneBuilder | 07:16 |
217 | Building a UI with SceneBuilder | 15:50 |
218 | More on SceneBuilder | 17:28 |
219 | JavaFX Challenge | 15:15 |
220 | JavaFX Challenge Part 2 | 13:17 |
221 | JavaFX Challenge Part 3 | 16:08 |
222 | JavaFX Challenge Part 4 | 14:04 |
223 | JavaFX Challenge Wrap up | 09:16 |
224 | Exceptions | 14:01 |
225 | Stack Trace and Call Stack | 13:05 |
226 | Catching and throwing Exceptions | 14:21 |
227 | Multi Catch Exceptions | 08:07 |
228 | Introduction to I/O | 15:56 |
229 | Writing content - FileWriter class and Finally block | 14:59 |
230 | Try with Resources | 12:14 |
231 | FileReader and Closeable | 12:56 |
232 | BufferedReader | 13:00 |
233 | Load Big Location and Exits Files | 07:30 |
234 | Challenge | 05:02 |
235 | Buffered Writer and Challenge | 13:12 |
236 | Byte Streams | 15:46 |
237 | Reading Binary Data and End of File Exceptions | 15:45 |
238 | Object Input Output including Serialization | 14:16 |
239 | Finish Object I/O and RandomAccessFile class | 16:04 |
240 | Create Random Access File | 14:30 |
241 | Update Static Initializer Block With Random File Access | 11:38 |
242 | Update Adventure Game to Read Random Access File | 14:21 |
243 | Java NIO | 14:48 |
244 | Writing Objects With Java NIO | 11:37 |
245 | Reading and Writing with Java NIO | 15:48 |
246 | Writing Binary Files with Java NIO | 13:37 |
247 | Reading Files with NIO | 15:48 |
248 | Absolute and Relative Reads | 11:11 |
249 | Chained Put Methods | 13:56 |
250 | Writing Sequentially | 13:05 |
251 | FileChannel to Copy Files and Pipes with Threads | 15:05 |
252 | Filesystem | 18:03 |
253 | More on Paths | 12:18 |
254 | Exists and CopyFile | 12:00 |
255 | Move, Rename and Delete | 11:17 |
256 | File Attributes | 12:51 |
257 | Read Existing Directory Contents | 14:16 |
258 | Separators Temp Files and File Stores | 12:26 |
259 | Walk File Tree | 11:34 |
260 | Copy Entire Tree | 12:59 |
261 | Mapping IO and NIO Methods | 12:54 |
262 | Concurrency and Threads Introduction | 07:00 |
263 | Threads | 13:33 |
264 | Runnable and Thread | 13:20 |
265 | Interrupt and Join | 09:45 |
266 | Multiple Threads | 11:53 |
267 | Thread Variables | 09:54 |
268 | Synchronisation | 11:06 |
269 | Producer and Consumer | 10:56 |
270 | Deadlocks, wait, notify and notifyAll methods | 14:06 |
271 | The Java Util Concurrent package | 12:10 |
272 | Thread Interference | 11:16 |
273 | Reentrant Lock and Unlock | 10:29 |
274 | Using Try Finally With Threads | 10:37 |
275 | Thread Pools | 12:04 |
276 | ArrayBlockingQueue Class | 12:30 |
277 | Deadlocks | 10:35 |
278 | More on Deadlocks | 14:07 |
279 | Thread Starvation | 16:48 |
280 | Fair Locks and Live Locks | 12:56 |
281 | Live Lock Example and Slipped Conditions | 05:05 |
282 | Other Thread Issues | 14:05 |
283 | JavaFX Background Tasks | 15:26 |
284 | Data Binding | 10:17 |
285 | Service | 14:35 |
286 | Challenge 1 and 2 | 09:11 |
287 | Challenge 3,4 and 5 | 11:16 |
288 | Challenge 6 and 7 | 11:01 |
289 | Challenge 8 | 05:31 |
290 | Challenge 9 | 04:54 |
291 | Lambda Expressions Introduction | 15:34 |
292 | Lambda Expressions Continued | 14:51 |
293 | Lambda Expressions Nested Blocks | 14:46 |
294 | Scope and Functional Programming | 15:03 |
295 | Functional Interfaces & Predicates | 16:39 |
296 | More on Predicates & Suppliers | 12:07 |
297 | Functions | 13:12 |
298 | Chaining java.util.function Functions | 11:57 |
299 | Streams | 13:51 |
300 | Streams - Intermediate and Terminal Operations | 13:07 |
301 | Streams - Flatmap & Lambda Best Practices | 21:31 |
302 | Lambda Challenge Part 1 | 12:08 |
303 | Lambda Challenge Part 2 | 16:34 |
304 | Regular Expressions Introduction | 16:22 |
305 | Character classes and Boundary Matchers | 13:56 |
306 | Quantifiers and the Pattern and Matcher classes | 14:43 |
307 | Matcher find and Group Methods | 15:04 |
308 | And, Or & Not | 15:27 |
309 | Regular Expressions Challenge Part 1 | 17:05 |
310 | Regular Expressions Challenge Part 2 | 15:31 |
311 | Regular Expressions Challenge Part 3 | 06:14 |
312 | Introduction to Debugging | 17:58 |
313 | More on Debugging | 11:25 |
314 | Field Watch Points | 16:15 |
315 | Advanced Debugging | 10:15 |
316 | Introduction to Unit Testing with JUnit | 16:21 |
317 | Asserts in Junit | 18:20 |
318 | More Asserts and Exception Handling | 16:35 |
319 | Parameterized Testing | 12:22 |
320 | JUnit Challenge #1 and #2 | 21:42 |
321 | JUnit Challenges #3 to #7 | 12:23 |
322 | Junit Challenges #8 to #10 | 12:07 |
323 | Section Introduction | 01:56 |
324 | Database Terminology | 10:33 |
325 | Install and Setup SQLite for Windows | 07:57 |
326 | Install and Setup SQLite for Mac | 02:01 |
327 | Install and Setup SQLite for Linux | 02:39 |
328 | Introduction to SQLite | 11:16 |
329 | More with SQLite | 10:43 |
330 | Querying Data With SQL | 16:03 |
331 | SQL Order by and Joins | 13:12 |
332 | More Complex Joins | 11:45 |
333 | Wildcards in Queries and Views | 15:18 |
334 | Housekeeping and Final SQL Challenge | 14:18 |
335 | JDBC and SQLite GUI Browser | 15:50 |
336 | Creating Databases With JDBC in Java | 17:27 |
337 | JDBC Insert, Update, Delete | 15:50 |
338 | .executeQuery() and using Constants | 20:40 |
339 | The Music SQLite Database | 12:44 |
340 | Write Java Query for Artists | 14:47 |
341 | Executing SQL in DB Browser | 17:19 |
342 | Query Albums by Artist Method | 16:24 |
343 | Query Artists for Song method | 15:04 |
344 | Result Set Meta Data | 14:40 |
345 | Functions and Views | 16:39 |
346 | Write the Method to Query View | 11:49 |
347 | SQL Injection Attacks and Prepared Statements | 17:02 |
348 | Transactions | 13:41 |
349 | Inserting Records With JDBC | 10:09 |
350 | Insert Albums, Artists, and Songs | 14:01 |
351 | Test Insert JDBC Code | 18:08 |
352 | JDBC with a GUI Program | 17:54 |
353 | Add Artists | 12:36 |
354 | Fix Artist and Preload Records | 13:25 |
355 | Implement Artist Query | 11:59 |
356 | Add ProgressBar | 09:39 |
357 | Handling Updates | 15:15 |
358 | Networking Overview | 09:40 |
359 | First Client and Server Apps | 15:04 |
360 | Multi Threaded Server | 14:05 |
361 | Multi-Threading and Timeouts | 12:47 |
362 | UDP Server and Client | 18:14 |
363 | High Level APIS | 18:56 |
364 | URL Connections and Input Stream Reader | 16:07 |
365 | HTTPUrlConnection | 17:58 |
366 | Alternatives to HTTPUrlConnection | 21:07 |
367 | Introduction to Modules | 06:22 |
368 | Module Declarations and Statements | 02:09 |
369 | Module Types | 05:40 |
370 | Project Setup and Test | 07:24 |
371 | Structuring the new project | 04:03 |
372 | Creating the first module (Common) | 12:05 |
373 | Creating the Module Descriptor file | 13:26 |
374 | Creating the 2nd module (Database) | 10:45 |
375 | Challenge - Create the final module (UI) | 09:53 |
376 | Transitive Dependencies | 07:30 |
377 | Work in Progress | 01:06 |
378 | Keywords and Naming Conventions | 07:32 |
379 | Naming Conventions Challenge | 03:40 |
380 | Operator Associativity | 07:08 |
381 | Declaration and Expression Statements | 07:33 |
382 | Expression Statements, Prefix and Postfix | 14:36 |
383 | Whitespace | 09:15 |
384 | Code Blocks and Indentation | 12:28 |
385 | Code Blocks and if, then, and else | 09:40 |
386 | Boolean, Naming Conventions and Scope | 07:12 |
387 | Challenge and Code Duplication | 09:25 |
388 | Defining Methods | 08:39 |
389 | Executing Methods | 03:30 |
390 | Method Parameters Overview | 09:38 |
391 | Removing Code Duplication | 06:51 |
392 | Returning Data from a Method | 08:50 |
393 | Using Data from a Method Call | 03:04 |
394 | Method Recap and Challenge | 05:47 |
395 | Method Challenge Solution | 10:32 |
396 | Old JavaFX Introduction Video for JDK 8 | 17:32 |
397 | Old JavaFX Code Vs FXml Video for JDK 8 | 13:28 |
398 | Bonus Lecture and Information | 05:02 |