What You Will Learn!
- Understand Object-Oriented programming concepts at the level where you can have intelligent design conversations with an experienced software engineer
- Understand the nuances of Java specific constructs in serialisation, exception-handling, cloning, the immutability of strings, primitive and object reference types
- Understand class and interface design
- Define, implement and instantiate objects
- Create class hierarchies using inheritance
- Apply and benefit from encapsulation, runtime polymorphism and interface-driven programming
Description
- Prerequisites: Basic understanding of Java
- Taught by a Stanford-educated, ex-Googler, husband-wife team
- Please don't take this class if you have already signed up for our From 0 to 1: Learn Java Programming course (that includes a far longer and more in-depth version of this material)
This is a quick and handy course with exactly what you need to know (nothing more, nothing less!) about Object-Oriented programming in Java
Let’s parse that.
- The course is quick and handy: It explains object-oriented programming in Java in just the right level of detail for you to put these to work today.
- The course has exactly what you need - nothing more, nothing less. It starts from zero, builds up the design, then gives plenty of real-world examples, but crisply and quickly.
- The course is also quirky. The examples are irreverent. Lots of little touches: repetition, zooming out so we remember the big picture, active learning with plenty of quizzes. There’s also a peppy soundtrack, and art - all shown by studies to improve cognition and recall.
What's covered:
- The Object-Oriented Paradigm: Classes, Objects, Interfaces, Inheritance; how an OO mindset differs from a functional or imperative programming mindset;
- Mechanics: the mechanics of OO - access modifiers, dynamic dispatch, abstract base classes v interfaces.
- Principles: The underlying principles of OO: encapsulation, abstraction, polymorphism
- Interfaces, abstract base classes and interface default methods
- Packages and Jars: The plumbing is important to understand too.
- Language Features: Serialisation; why the Cloneable interface sucks; exception handling; the immutability of Strings;
- Types: the Object base class; the instanceof operator, primitive and object reference types; pass-by-value and pass-by-object-reference.
Who Should Attend!
- Yep! Folks that are new to (or somewhat intimidated by) Object Oriented Programming
- Yep! Experienced C programmers looking to make the leap from procedural/imperative to object-oriented programming
TAKE THIS COURSE