Java for Programmers

Share

Summary

A concise course on Java for programmers familiar with other languages, covering basics, OOP, and advanced concepts.

Highlights

Introduction00:00:00

The instructor introduces himself and the course, targeting programmers with experience in other languages like JavaScript, Python, or C++ who want to quickly learn Java. The course assumes basic programming knowledge.

Java Fundamentals00:02:10

Discussion of Java's fundamentals, including the toolkit needed like JDK and an IDE, followed by object-oriented programming, how Java works, and advanced concepts such as arrays, strings, packages, access modifiers, abstract classes, interfaces, collections API, threads, and exception handling.

Why Java?00:03:11

Java is described as both a language and a technology, highlighting the importance of JVM and its use with other languages like Scala, Kotlin, and Groovy. It emphasizes Java's popularity in the enterprise market and its continuous updates every 6 months.

Setting up the Environment00:04:36

Instructions on setting up the development environment: choosing an IDE (VS Code, IntelliJ IDEA, Eclipse, NetBeans) and installing the Java Development Kit (JDK), specifically version 17 (LTS). Open VS Code to start coding.

JShell: Java REPL00:06:57

Demonstration of JShell, a Read-Eval-Print Loop, for executing single-line Java statements without creating a full file. Examples include printing "Hello World" and creating/using variables.

Creating and Running Java Files00:09:33

Instructions on creating a Java file (demo.java), emphasizing the required syntax: a class declaration with a `public static void main` method. Compilation using `javac demo.java` and execution using `java demo` are demonstrated.

Variables and Data Types00:12:46

Explanation of variables and primitive data types in Java (int, double, float, char, boolean). The concept of declaring and assigning values to variables and printing them is covered.

Operators, Conditionals, and Iterators00:17:24

Focus on operators (arithmetic, relational, logical), conditional statements (if-else, switch), and iterators (for, while, do-while) in Java, with examples of usage.

Object-Oriented Programming (OOP) Concepts00:31:01

Introduction to OOP concepts focusing on classes and objects. A keyboard class is created as a blueprint, which defines the properties (keys, color) and behaviors (pressed, throw it) of the keyboard objects. Explanation of how objects are instantiated using the 'new' keyword.

Constructors, Encapsulation, and Inheritance00:46:28

Explanation of constructors for object initialization, encapsulation using private variables and getter/setter methods, and inheritance using the 'extends' keyword with an AdvancedKeyboard subclass.

Polymorphism and Abstraction00:56:55

Discussion of polymorphism through method overriding and overloading, using the AdvancedKeyboard example. Hiding the working details example: driving a car.

How Java Works: JVM, JRE, and JDK01:03:39

Explanation of Java's architecture: JDK (for development), JRE (for running Java applications), and JVM (Java Virtual Machine, where Java code executes). Key components inside JVM, such as Heap memory, stack, and their relation to objects, instance variables, local variables, and static variables.

Strings01:15:25

Discussion of string creation, explaining that strings are objects. String immutability and use of string buffer for mutable strings.

Arrays01:19:08

Creation and use of arrays, demonstrating normal and enhanced for loops. Shows how to create the student object as an array.

Packages01:27:53

How to build a unique library by using com.telesco.

Access Modifiers01:33:06

The 4 modifiers are private, protected, default and public. How to use the final to make a variable as a constant.

Abstract Class01:39:17

How to create an abstract class, the difference with interface is in abstract class there are normal methods, whereas interface only has methods that are declared.

Portable Class01:43:28

How to use portables and interfaces.

Exception Errors01:48:00

Three parts of an errors: compiled, logical and runtime. What happens to runtime will stop the operation so what this shows is how to prevent this by using Try Catch block

Finally block01:54:07

How to use a finally block during exception to do a close event

Colletion API01:57:35

The collection API is dynamic size on array, there are two parts with collection. Collection, and with capital C is an actual interface

array List01:58:19

How to create an array List which is dynamic size. arrayList and object can be a different generic type

hashset02:04:13

Introduction to set what this doesnt have is indexs which does not have an index key. You can loop between elements and fetch the value. Map also has index values to them

Threads02:13:42

Implementing different ways to run in paralell. Thread object and calling one of those methods to to do two different things.

Recently Summarized Articles

Loading...
Java for Programmers | Shorty