Java Master Class

24h 40m 37s
English
Paid
November 1, 2023

Welcome to Amigoscode's most comprehensive Java course! It includes everything you need to gain a complete understanding of Java, code well and build your own applications. Earlier this year, I taught a Java Bootcamp in London for over a year. Then an idea struck me: why not bring all this value to Amigoscode's community in the form of a Master Class? Thanks to six months of preparation and an amazing effort by Amigoscode's team, I am excited to announce that we have surpassed our goal and also included features that will help you master the language within the shortest possible time:

Watch Online Java Master Class

Join premium to watch
Go to premium
# Title Duration
1 Intro 02:34
2 Practice Practice Practice 01:03
3 Textbook 04:15
4 Discord 02:46
5 What is Java 03:51
6 What can you build with Java 02:56
7 Java Usages 06:21
8 Compliled vs Interpreted Languages 05:11
9 Static vs Dynamic Type Checking 05:23
10 Java version history 05:10
11 IntelliJ IDEA 03:26
12 jetbrains.com/idea 04:48
13 Jetbrains ToolBox 03:20
14 Quick Word Before We Begin 01:38
15 Create Project - Part 1 04:53
16 Create Project - Part 2 03:11
17 Your First Java Program 02:24
18 Compiling and Running via Terminal 03:35
19 Fixing Compilation Errors 04:41
20 View ByteCode 02:07
21 Public Static Void Main 02:46
22 Understanding Java Code 03:07
23 SOUT Keyboard Shortcut 01:47
24 Reserved Keywords 01:57
25 Comments 02:28
26 Variables 03:59
27 Primitives Data Types Difference 04:55
28 Numeric Literals with Underscore 01:43
29 Arithmetic Operators 03:05
30 Increment and Decrement Operators 04:38
31 Comparison Operators 02:43
32 Short hand re-assignment 03:21
33 Naming Variables 03:09
34 Strings 06:38
35 String API Documentation 02:08
36 Reference Types and Objects 05:04
37 Reference Types and Objects Diferences 06:16
38 Pass py value with Primitives 04:21
39 Pass py value with Reference Types 06:31
40 Arrays 07:43
41 0 and Null Values for Arrays 03:20
42 Quick word on Arrays 01:22
43 TextBook and Exercises 03:23
44 How To Attempt Exercises 06:54
45 Quick word on the CLI Project 00:36
46 For Loop 05:03
47 Loops and Arrays 03:33
48 Enhanced For Loop 02:38
49 For i vs Enhanced For Loop 02:02
50 While Loop 03:06
51 Do While 02:38
52 If Statements 03:16
53 If Statements with Conditions 02:24
54 Else If 03:30
55 AND Logical Operators 03:52
56 OR Logical Operators 04:10
57 Logical Operators Recap 02:49
58 ! on ifs 01:37
59 Dont do this with if statements 01:04
60 Switch Statement 04:28
61 Data Types for Enums 02:32
62 New Switch Expression 03:55
63 Packages 02:24
64 Creating Packages 03:47
65 Exploring Packages 03:01
66 Import keyword 06:01
67 Optmizing imports 00:50
68 Import with fully qualified name 03:49
69 No Import for java lang 01:46
70 Access Modifiers Intro 01:02
71 Public Access Modifier 05:18
72 Private 02:26
73 Default 04:34
74 Recap 06:25
75 When To Use Each Access Modifier 01:35
76 Static Keyword 07:18
77 Methods 03:22
78 Method that add 2 numbers 05:12
79 Parameters and Arguments 01:35
80 Void methods 05:23
81 Naming Convention 03:29
82 Exercise 01:25
83 Exercise Solution 04:07
84 Understanding public static void main 06:51
85 Program Arguments 05:03
86 Type Inference with Var 06:42
87 Break Keyword and Loops 02:18
88 Continue 03:14
89 Return Keyword and Void Methods 02:49
90 Final Keyword 06:24
91 Enums 09:06
92 Enums Methods 04:08
93 Implicit and Explicit Type Casting 04:33
94 Global and Local Variables 07:04
95 Wrapper Classes 06:32
96 Working With Strings 08:45
97 How Strings are stored in memory 04:04
98 Strings are Immutable 02:36
99 String Literal vs String Object 04:14
100 Comparing Strings with == 04:41
101 Comparing Strings with .equals 02:10
102 Useful String static Methods 05:18
103 LocalDateTime 03:54
104 LocalDate and LocalTime 02:43
105 Creating Specif Dates 04:56
106 ZoneIds 04:05
107 Other Date Classes 04:42
108 The Problem With double 02:06
109 BigDecimal 02:16
110 Exploring BigDecimal Methods 04:37
111 Scanner 04:14
112 NextInt and other data types 03:28
113 Outro 01:07
114 Intro 02:17
115 What is an exception 04:10
116 Try Catch 04:31
117 Multiple Catch Blocks 04:15
118 Using Or Within Catch 02:37
119 The Exception Class 07:09
120 Finally Keyword 02:06
121 Exception Hierarchy 08:11
122 Uncheck Exceptions 05:20
123 Checked Exceptions 06:59
124 Throw and Throws 06:34
125 Throwing Exceptions 08:25
126 When To Use Checked VS Unchecked Exeptions 01:33
127 Creating Custom Exceptions 06:31
128 Creating Files 06:02
129 Writing To Files 08:27
130 Reading from Files 04:09
131 Try with Resources 04:40
132 Intro 02:09
133 Your first class 03:57
134 Setters 05:44
135 Getters 02:56
136 Constructors 04:55
137 Default Constructors 02:25
138 Multiple Contructors 04:11
139 ToString 06:26
140 The Inside Constructors 03:27
141 The This Keyword 06:14
142 Everything in Java is an Object 07:49
143 @Override 02:53
144 Comparing Objects with == 04:56
145 Comparing Obects with .equals 05:13
146 Generating Equals method 04:02
147 Equals Explained 06:49
148 Generating Code 04:14
149 Person and Cats Example 04:48
150 POJOS 03:48
151 Java Bean 05:02
152 Exercise 03:14
153 Exercise Solution 09:21
154 Static Keyword 05:49
155 When to use Static 06:31
156 Static Initlaization Block 06:35
157 Instance Block Initializer 05:18
158 Static Import 02:36
159 Intro 01:41
160 Packages 03:08
161 Models 04:28
162 Service Classes 09:31
163 Data Access Object 08:29
164 Connecting DAO and Service 08:51
165 N Tier Architecture 02:42
166 Utitlity Classes 05:04
167 Intro 01:26
168 The first CLI project task 03:09
169 Demo 04:20
170 Upcoming Section Intro 02:09
171 Encapsulation 02:29
172 Encapsulation in Action 05:07
173 The Problem With Non Private Fields 06:33
174 Data Hiding 06:25
175 String Class Encapsulation Example 04:20
176 What is Inheritance 02:14
177 Implementing Inheritance 04:53
178 Create an instance of Programmer 06:09
179 Super Keyword 04:20
180 Protected Access Modifier 02:44
181 Override 05:57
182 Single and Multi Level Inheritance 01:11
183 Abstract Keyword on Classes 04:05
184 Abstract Methods 04:19
185 A Quick Word Before we move on 00:34
186 Abstract Classes Example 15:33
187 What is Polymorphism 07:44
188 Car Bicycle Electric Scooter Example 04:28
189 Create Your First Interface 02:22
190 Implementing Interfaces 07:01
191 Putting it all together 07:00
192 Constants 02:16
193 Default Methods 05:31
194 CLI Project Exercise 03:11
195 Don't Do This 01:25
196 Dependecy Injection 05:07
197 Dependency Injection In Action 05:20
198 Singletons and @Inject_@Autowire 08:05
199 CLI Project Exercise 01:32
200 SOLID Principles 03:01
201 Single Responsibitiy 04:55
202 Open Close 06:01
203 Liskov 03:14
204 Interface Segragation 02:37
205 Dependecy Inversion 06:15
206 Null Pointer Exception 06:17
207 The Wrong Way Of Dealing with Null 03:48
208 Optionals 10:42
209 Intro 03:30
210 Overview 01:58
211 Arrays 02:37
212 Working With Arrays 11:28
213 2D Arrays 01:38
214 Working with 2D Arrays 05:43
215 Lists 01:38
216 Working With Lists and ArrayList 10:23
217 Stack 01:53
218 Working With Stacks 07:07
219 Queue 01:24
220 Working With Queues 06:20
221 Linked List 04:18
222 Working with LinkedList 08:34
223 Sets 01:21
224 Working with Sets 07:33
225 Map Interface Hierarchy 01:56
226 Maps 00:42
227 Working With Maps 09:05
228 HashCode 02:56
229 Working HashCode and HashFunction 07:51
230 Outro 03:18
231 HackerRank Big Notation 08:37
232 CLI Project Exercise 01:33
233 Intro 01:05
234 Class Cast Exception 04:25
235 ClassCastException Example 2 02:31
236 Type Parameter and Type Argument 06:08
237 Generic Type Naming Convention 02:25
238 Generic and Classes 03:45
239 Generic and Classes Part 2 06:10
240 Generics and Methods 08:28
241 Bounded Type Parameters 09:06
242 Multiple Bounds 04:24
243 Unbounded Wildcard 05:06
244 Upper Bounded Wildcards 03:31
245 Lower Bounded Wildcards 03:42
246 Difference Between Bounded Type Parameters and Wildcards 03:23
247 Type Erasure 02:44
248 Outro 01:03
249 Intro 01:15
250 Java Streams 03:30
251 How Streams Work 03:27
252 Getting Started With Streams 06:30
253 Exercise 00:57
254 Declarative Solution 01:52
255 Imperative Solution 04:08
256 Visualise Streams 02:13
257 Outro 00:25
258 CLI Exercise 01:27
259 Maven 02:55
260 Installing Maven 02:03
261 Verifying Maven Installation 00:47
262 Creating a Maven Project 03:40
263 Maven Folder Structure 04:09
264 Project Object Model (pom.xml) 02:48
265 Target Folder 03:41
266 Installing Maven Dependencies 07:52
267 Using Java Faker 03:54
268 .m2 Folder 05:27
269 Maven Lifecycles 03:52
270 Running Maven Commands 06:09
271 Packaging and Jar Files 04:04
272 CLI Project Exercise 02:22
273 Intro 02:49
274 JUnit 01:21
275 Installing JUNIT 04:30
276 Launching Your First Test 04:36
277 Calculator and CalculatorTest Classes 03:49
278 Writing Your First Unit Test 05:12
279 Assertions 02:44
280 Test Scenarios 03:28
281 Other JUnit Features 02:19
282 CLI Exercise 01:18
283 Section Intro 01:12
284 Intro Spring Boot 02:31
285 Spring Initializr 02:56
286 Open the project with IntelliJ 02:04
287 The pom.xml 02:27
288 Cleanup Few Things 02:18
289 JDK 02:47
290 Your first Spring Boot Application 04:10
291 Embedded Web Serve 03:06
292 Configuring Embedded Web Server 04:48
293 Your first API 02:53
294 @SpringBootApplication 06:07
295 Spring Web MVC 05:46
296 JSON For Java 07:17
297 Java Objects to JSON Objects 05:26
298 Introduction to HTTP 04:12
299 The Evolution of HTTP 03:15
300 HTTP Request and Response Messages 03:49
301 HTTP Methods 04:44
302 HTTP Status Codes 06:32
303 URL 09:01
304 API and REST API 03:38
305 Public APIs and Other Types 06:37
306 Why build APIs 02:55
307 Chrome Developer Tools 07:07
308 Exploring XHR for our API 04:35
309 Inspecting Instagram Network Activity 09:29
310 REST Client & Postman 03:49
311 IntelliJ REST Clients 05:08
312 CRUD and Section Overview 02:05
313 Customer Model 02:29
314 Fake Database 03:27
315 API Endpoint 05:54
316 @PathVariable 07:57
317 N Tier Architecture 02:02
318 Refactor - Controller Service and DAO 10:40
319 @RestController @Service @Repository @Component 07:02
320 Application Context 04:58
321 Inspecting beans 05:09
322 Bean Scopes 02:23
323 Creating Beans 07:49
324 We are not handling error the right way 01:56
325 Custom Exception 05:02
326 @ResponseStatus 02:28
327 Include error Message to Responses 02:04
328 Section Intro 00:51
329 Postgres and Docker 02:18
330 Verifying Docker Installation 02:27
331 Postgres DB with Docker compose 04:26
332 Connecting to Database 01:34
333 Connecting to DB using IntelliJ IDEA 03:22
334 Data Source & JPA 02:30
335 Installing PostgreSQL Driver and Spring Data JPA Dependencies 03:00
336 Configuring Datasource Properties 04:48
337 Create Customer Table 04:51
338 Entity 03:44
339 Inspecting The Database 02:29
340 Column Contraints 02:31
341 CustomerRepository 02:24
342 CustomerJPADataAccessService class 02:02
343 @Qualifier 02:48
344 Saving Entities 04:32
345 Exploring JPA Methods 03:43
346 The Problem 01:03
347 Exercise Solution 01:42
348 Intro 01:36
349 Chasing Interface 00:51
350 Override insert customer 01:27
351 Business Logic for Adding new Customer 08:36
352 Controller @RequestMapping and @RequestBody 02:46
353 Testing POST Request 04:07
354 Exercise 01:40
355 Exercise Solution 02:35
356 Exercise 03:23
357 Exercise Solution 05:01

Similar courses to Java Master Class

Experience Design Patterns In Java

Experience Design Patterns In Javaudemy

Duration 7 hours 19 minutes 58 seconds
Java Programming Masterclass covering Java 11 & Java 17

Java Programming Masterclass covering Java 11 & Java 17udemy

Duration 80 hours 13 minutes 14 seconds
Java Test Automation Engineer - from Zero to Hero

Java Test Automation Engineer - from Zero to Heroudemy

Duration 18 hours 40 minutes 6 seconds