
Mike introduces the complete Java programming and certification guide. He covers basics from zero, a first-time programmers section, and a bonus live Q&A.
Explore information technology, including hardware, software, operating systems, and infrastructure, and see how everyday devices like phones and fire alarms collect and process information.
Explore the origins of programming, define it as creating a set of instructions executed by a computer to perform tasks, and note that computers do what they are told.
Render the visual interface on the client side and perform simple frontend calculations. Handle heavier logic, data storage, and authentication on the backend (server side) through client-server communication.
Explore the vast landscape of programming languages, from Java and JavaScript to C#, C++, and HTML/CSS, and learn how language types, web usage, and frameworks shape real-world development.
Explore the software developer role, from writing code in multiple programming languages to interpreting design and detailing implementation, documentation, and communication with testers, product owner, architects, and designers.
Explore how variables store values in memory as labeled boxes with optional types, and compare them to constants using examples like calculating age from a birth date.
Master pseudocode if else concepts by evaluating conditions to choose which block of code runs, handling true and false paths with else statements.
Explore pseudocode loops, including for and while loops, that repeat a block of code until a condition becomes false, exemplified by counting 0 through 3.
Explore the background of Java, from the early Jaffa project at Sun Microsystems to the right once run anywhere promise, its shift from web applets to backend and IoT.
Explore the evolution of Java editions and versions, from early releases to eleven, and compare Java SE, Java EE, Java ME, and Java Card across desktops, servers, and mobile devices.
Download and install the Oracle JDK using the installer for Windows. Configure JAVA_HOME and PATH in system variables, then verify the setup with java -version.
Install the java IDE and start a new project using the community edition. Write a hello world program with System.out.println and run it to verify basics of classes and packages.
Learn how Java packages organize files and how classes use data fields and methods, illustrated with a sample car class featuring doors, color, weight, and a start method.
Explore class level, method level, and block scope in Java, showing when local variables exist, how braces limit access, and how to manage scope with practical examples.
Learn to compile a Java file with javac, then run the program using the java command by specifying the main method's class. Handle compile errors and verify successful execution.
Use import to access classes from other packages, choosing between a single or wildcard import. Follow lowercase, domain-based package naming and use static imports sparingly, ideally from one class.
Explore how fields, or variables, become properties of a class in Java, with primitive and custom object types, an example car with color and doors, and casting rules.
Compare primitives and objects in Java, noting stack versus heap memory. Observe how objects hold multiple values and reference other objects, exemplified by a car and engine.
Explore primitive and wrapper classes in Java, demystifying boxing and unboxing, autoboxing, and using static wrapper methods like max and min for practical collection use.
Learn enums as a Java type that groups constants, using a day of week example with uppercase values, and access ordinal values to reveal the index position.
This lecture introduces the four basic Java operators: arithmetic, relational, unary, and assignment, with examples of plus, minus, division, equals, plus equals, and not equal.
Explore how to determine equality in Java by using == for primitives and equals for objects, override equals and hashCode for custom classes, and apply proper instanceof checks.
Master how to use if, else, and else if statements to make decisions in code based on boolean conditions, with examples of true/false, and using ternary as an alternative.
Explore how a switch statement checks one value against multiple cases, uses break to stop execution, and employs a default label for unmatched values, with strings and enums.
Master one-dimensional and multidimensional arrays in Java, learn zero-based indexing and fixed lengths, and explore initialization, type safety, and using Arrays for sorting and searching.
Explore how loops control flow in Java, including for, enhanced for, while, and do-while loops, with practical examples of iteration, array traversal, and condition-based execution.
Break ends a loop and continue skips the next iteration, with labeled outer and inner loops, highlighting readability and best practices such as preferring return over break.
Explore how to write Java methods, declare modifiers and return types, use input parameters, and return values like booleans, with practical examples of method calls.
Discover how constructors initialize objects in Java, from the default to custom parameterized forms. Learn how super calls and inheritance manage parent constructors in dog and animal examples.
Learn how public, private, default, and protected modifiers govern access to class members. Default means access inside the package, while protected allows access within packages and by subclasses.
In this course I will cover all the topics that Oracle includes in the exam and I will help you with the exact steps to take to prepare for passing the OCA exam. However, I will keep it minimal and only focus on what you need to know for OCA. I did however add a huge bonus section that goes more indepth and shows some different examples, and also challenges you to work on a project after every video to make sure you understood the topics.
This course is for programmers that want to learn Java. You can skip some sections though. And it is also a great starting point for beginners in programming. I have also included some videos to help ultimate beginners get started.
I'm an incompany Java trainer and I've helped many complete beginners to get OCA certified and kickstart their jobs as software developers.
My passion is to help people from a different field or with a different career path to get into software development, but this course is also useful for Java software developers preparing for the OCA exam and for software developers coming from other languages that want to know more about Java or get their OCA certificate.
More content will be added over time :)
If you have any questions or suggestions, please reach out!