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.

Web services in Java SE, Part 2: Creating SOAP web services

Learn how to use Java SE's JAX-WS API to create a SOAP-based units-conversion Web service.

Java 101: Datastructures and algorithms in Java, Part 1

Java 101: Datastructures and algorithms in Java, Part 1

Programmers use datastructures to store and organize data, and algorithms to manipulate that data. Get the basics of these fundamental programming elements, and find out how they work together in your Java programs

Web services in Java SE, Part 1: Tools overview

Web services in Java SE, Part 1: Tools overview

This post launches a four-part series introducing you to Java SE 6's support for Web services. Later in the series we'll build SOAP-based and RESTful-based Web services and explore advanced Web services topics.

Java library evolution and other puzzlers

Exploring puzzling code to figure out why it doesn't do what seems obvious is one way to improve your programming skills. Puzzle yourself today!

Java 9's other new enhancements, Part 6: Concurrency

Java 9's other new enhancements, Part 6: Concurrency

Java 9 introduces a publish-subscribe framework for reactive streams, improvements to the CompletableFuture class, and other concurrency enhancements

Java 101: Regular expressions in Java, Part 2

Java 101: Regular expressions in Java, Part 2

Complete your introduction to the Regex API, then find out how regular expressions make quicker work of common tasks like code documentation and lexical analysis.

Java 101: Regular expressions in Java, Part 1

Java 101: Regular expressions in Java, Part 1

Pattern matching is an important technique used in text processing, and Regex is here to help. Find out how to use the Pattern class and constructs like quantifiers and boundary matchers to describe patterns in your Java programs.

Java 9's other new enhancements, Part 5: Stack-Walking API

Java 9's other new enhancements, Part 5: Stack-Walking API

Replacing StackTraceElement, the new Stack-Walking API supports filtering and lazy access to stack trace information, and makes it easier to obtain the caller class

Java 9's other new enhancements, Part 4: Multi-release JAR files

Java 9's other new enhancements, Part 4: Multi-release JAR files

A Java 9 extension to the JAR file format makes it easier for third-party libraries and frameworks to use language and API features from newer Java releases

Java 9's other new enhancements, Part 3: The Process API

Java 9's other new enhancements, Part 3: The Process API

Updates to the Process API will make it easier to obtain a process ID, get additional information about a process, and execute actions on process termination

Java 9's other new enhancements, Part 2: Milling Project Coin

Java 9's other new enhancements, Part 2: Milling Project Coin

JEP 213 builds on Java 7's Project Coin with small language improvements and additions for your Java programs

Java 9's other new enhancements, Part 1: Collections factory methods

Java 9's other new enhancements, Part 1: Collections factory methods

The module system and REPL tool have received widespread attention, but Java's newest release has much more to offer. This series introduces other enhancements to Java 9, beginning with the new convenience factory methods in the Java...

Are checked exceptions good or bad?

While some programmers believe checked exceptions are a good language feature, others would disagree. In this post, Jeff introduces checked exceptions, then dives into the debate.

Read-only properties in JavaFX 8

Learn how to expose internal modifiable properties as external read-only properties in JavaFX 8

Interface-based applications in Java 8

Interface-based applications in Java 8

Java 8's support for static methods in interfaces made it possible to create interface-based applications. Learn how in this short blog post.

Immutable empty collections and iterators

Immutable empty collections and iterators

Find out why the java.util.Collections class includes static methods that return immutable empty collections and iterators.

When is a character not a character?

The values assigned to char variables don't always represent characters. Learn all about characters and their variables in this edition of Java Q&A.

Exploring JavaFX's Application class

JavaFX's Application class is an essential part of every JavaFX application. Learn about the various capabilities that Application makes available.

The six roles of the interface

Java's interface language feature often puzzles newcomers to this language. Jeff eliminates this mystery by presenting the six roles that interfaces play in the Java language.

Checkers, anyone?

Checkers, anyone?

Explore the design and implementation of a Swing-based library that provides the user interface for the game of checkers.

Load More