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.

Java 101 primer: Composition and inheritance
Tip

Java 101 primer: Composition and inheritance

A quick guide to the composition technique in Java programming. Learn how to use composition to resolve the well-known problem with inheritance.

JavaFX improvements in Java SE 8u40

JavaFX 8u40 added support for accessibility, standard and custom dialogs, a spinner control, and text formatting. Learn about these new capabilities in this installment of Java Q&A.

Java 101 primer: Fields and methods in Java

Java 101 primer: Fields and methods in Java

Learn how to handle fields and methods right, with these seven advanced techniques for object-based programming in Java.

Java 101: Classes and objects in Java

Java 101: Classes and objects in Java

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

Java 101: Deciding and iterating with Java statements

Java 101: Deciding and iterating with Java statements

Learn how to use statements like if, if-else, switch, and while to specify expressions, make decisions, and iterate in your Java programs.

Java 101: Evaluate Java expressions with operators

Java 101: Evaluate Java expressions with operators

Continue learning the fundamentals of Java programming, with this Java 101 introduction to using operators to write compound Java expressions.

NIO.2 cookbook, Part 3

Leverage file-visitor, glob/pathmatcher, and directory-watcher features for advanced tasks in NIO.2.

Java 101: Elementary Java language features

Java 101: Elementary Java language features

Learn three ways to document your code and find out why Unicode is the universal encoding standard for Java, then practice using identifiers, types, literals, and variables in your Java programs. All examples are written in Java 8.

Java 101: Learn Java from the ground up

Java 101: Learn Java from the ground up

If you're new to Java then you've come to the right place: Get started with the foundations of the Java platform and code your first Java application with this classic tutorial for beginners.

Java 101: The essential Java language features tour, Part 7

Java 101: The essential Java language features tour, Part 7

End your tour of Java's essential language features with Java 8's method references, interface default and static methods, and three lesser known language updates, then preview new features coming in Java 9.

NIO.2 cookbook, Part 2

Test out these recipes for obtaining paths and retrieving path information, testing files and directories, and working with attributes in NIO.2.

Java 101: The essential Java language features tour, Part 6

Java 101: The essential Java language features tour, Part 6

Learn by example how lambdas interact with scopes, local variables, the this and super keywords, and exceptions in Java programs.

NIO.2 cookbook, Part 1

Start here, with three recipes for copying, deleting, and moving files using NIO.2.

Invokedynamic 101

What do you need to know about using invokedynamic and the java.lang.invoke API package in Java 7 and Java 8?

Java ME 8 and the Internet of Things

Java ME 8 and the Internet of Things

For Java developers just getting started with embedded programming and IoT, this guide will orient you in Java ME's history and the new Java ME 8 and Java Embedded platforms.

Customizing cell rendering

Swing's javax.swing.JList component and JavaFX's javafx.scene.control.ListView control let you customize how their various cells are rendered. In this post, I show you how to accomplish these tasks.

Java 101: The essential Java language features tour, Part 5

Java 101: The essential Java language features tour, Part 5

Not all varargs methods will contribute to heap pollution, so find out which ones do and why, in this second half of Jeff Friesen's introduction to small language changes that have made a big difference since JDK 7.

The ultimate superclass, Part 3

This post completes a three-part series in which I present and answer questions about Object and its methods.

Java 101: The essential Java language features tour, Part 4

Java 101: The essential Java language features tour, Part 4

Project Coin was the Java 7 language update that emphasized small changes with a big impact. Get a primer on automatic resource management with try-with-resources, then zip through three more JDK 7 updates: switch-on-string,...

The ultimate superclass, Part 2

Java beginners are invited to dig deeper into Java's ultimate superclass with this introduction to Object's finalize(), getClass(), and hashCode() methods.

Load More