Jeff Friesen

Jeff Friesen teaches Java technology (including Android) to everyone via articles, blogs, books, and software. In addition to writing Java books for Apress, Jeff has written numerous articles on Java and other technologies for JavaWorld, InformIT, Java.net, and SitePoint. Jeff can be contacted via his website at JavaJeff.ca.

Exceptions in Java, Part 2: Advanced features and types

Exceptions in Java, Part 2: Advanced features and types

Take your Java exceptions to the next level with stack traces, exception chaining, try-with-resources, final re-throw, and more

Exceptions in Java, Part 1: Exception handling basics

Exceptions in Java, Part 1: Exception handling basics

Everything you need to know about throwing, trying, catching, and cleaning up after Java exceptions

Interfaces in Java

Interfaces in Java

Learn the difference between classes and interfaces once and for all, then get started declaring, implementing, and extending interfaces in your Java programs

Class and object initialization in Java

Class and object initialization in Java

Learn how to to initialize Java classes and objects for successful JVM execution

Java polymorphism and its types

Java polymorphism and its types

Learn the four types of polymorphism in Java, then start using subtype polymorphism to execute different forms of the same Java method

Java tip: Fields and methods in Java

Java tip: Fields and methods in Java

Learn seven advanced techniques for working with fields and methods in Java, including recursion, method call chaining, pass-by-value arguments, and rules for calling methods

When to use composition vs inheritance

When to use composition vs inheritance

Inheritance is a valuable programming technique, but in some conditions it breaks encapsulation. Find out why composition is the vital alternative to inheritance, and learn when and how to use it in your Java programs.

Inheritance in Java, Part 2: Object and its methods

Inheritance in Java, Part 2: Object and its methods

Get to know Java's Object superclass and its methods for duplicating, comparing, cleaning up, and scheduling Java objects

Inheritance in Java, Part 1: The extends keyword

Inheritance in Java, Part 1: The extends keyword

Use Java's extends keyword to derive a child class from a parent class, invoke parent class constructors and methods, override methods, and more

Classes and objects in Java

Classes and objects in Java

Learn how to make classes, fields, methods, constructors, and objects work together in your Java applications.

Loop, switch, or take a break? Deciding and iterating with Java statements

Loop, switch, or take a break? Deciding and iterating with Java statements

Learn how to use standby statements like for, while, if-else, and break, then get started with the new switch expressions in Java 12

Evaluate Java expressions with operators

Evaluate Java expressions with operators

Everything you need to know about the Java operator types and using them to write and evaluate Java expressions in Java 12

Elementary Java language features

Elementary Java language features

Learn three ways to document your code, then get started using identifiers, types, literals, and variables in Java 12

Learn Java from the ground up

Learn Java from the ground up

If you're new to Java then you've come to the right place. Get an overview of the Java platform, then code your first application using Java 12 and the new Java Shell

Java XML and JSON: Document processing for Java SE, Part 2: JSON-B

Java XML and JSON: Document processing for Java SE, Part 2: JSON-B

Use the Java API for JSON Binding (JSON-B) to serialize and deserialize Java objects, arrays, and collections in Java SE

Java XML and JSON: Document processing for Java SE, Part 1: SAXON and Jackson

Java XML and JSON: Document processing for Java SE, Part 1: SAXON and Jackson

Learn how to transform and convert XML and JSON documents with SAXON and Jackson

Write a purely functional Bubble Sort application

Write a purely functional Bubble Sort application

Improve a classic, object-oriented sort application using Java's functional programming capabilities

Functional programming for Java developers, Part 2

Functional programming for Java developers, Part 2

Rewrite object-oriented code using functional techniques. Get started with lambdas, method references, functional interfaces, and the Streams API in Java

Functional programming for Java developers, Part 1

Functional programming for Java developers, Part 1

Optimize your Java code with these five functional programming techniques

Data structures and algorithms in Java, Part 5: Doubly-linked lists

Data structures and algorithms in Java, Part 5: Doubly-linked lists

A guide to advanced searching and sorting with doubly-linked lists and circular-linked lists and their algorithms

Load More