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.

03/12/15

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.

09/22/14

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,...

06/05/14

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

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

Get introduced to the last but not least of new features that have improved Java's productivity since JDK 5: Autoboxing and unboxing, the enhanced for loop, static imports, varargs, and covariant return types.

03/13/14

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

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

Learn how to use typesafe enums in switch statements, then get started with Java annotations and meta-annotations types like Target, which can clarify the meaning of annotations in your Java code.

01/21/14

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

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

From assertions in JDK 1.4 to the forthcoming lambdas in Java 8, the Java language has evolved considerably since its inception. Start building your toolbox of essential Java language features this week, with assertions and generics.

09/19/13

Java 101: Java concurrency without the pain, Part 2

Learn how the Java Concurrency Utilities handle locking, atomic variables, and fork/join operations. Then prepare for the future with an overview of anticipated changes to the Java Concurrency Utilities coming in Java 8.

08/13/13

Java 101: Java concurrency without the pain, Part 1

When concurrency gets complex, Java developers can count on the Java Concurrency Utilities to smooth the bumps. Get started with the Executor framework, concurrent synchronizer types, and the Java Concurrent Collections package, and...

06/19/13

Java 101: Catching up with the Java Date and Time API

Find out how the Java Date and Time API addresses the need for a more robust date and time infrastructure in Java SE, then familiarize yourself with the java.time classes you're most likely to use, in this inaugural installment of...

04/08/13

Java 101: Java's character and assorted string classes support text-processing

Java developers use the Character, String, StringBuffer, and StringTokenizer classes to represent and manipulate text in programs. Learn how to create objects from these classes and examine their methods, then get the answers to three...

10/04/02

Java 101: Packages organize classes and interfaces

Create packages, import packaged classes and interfaces into your programs, move packages, and encapsulate them in jar files.

09/06/02

Java 101: Understanding Java threads, Part 4: Thread groups, volatility, and thread-local variables

The "Understanding Java threads" series concludes by uncovering some of the loose ends of threading: thread groups, volatility, thread-local variables, timers, and thread death.

08/02/02

Java 101: Understanding Java threads, Part 3: Thread scheduling and wait/notify

Jeff Friesen keeps the Java 101 focus on Java threads this month, introducing the mechanisms that allow you to select and manage thread priority. Learn how thread scheduling, the wait/notify mechanism, and thread interruption should...

07/05/02

Java 101: Understanding Java threads, Part 2: Thread synchronization

Multithreaded programming brings a new order of complexity to Java threads, and you'll need some new tools to manage it successfully. In this second article in the Java 101 "Understanding Java threads" series, Jeff Friesen eases into...

06/07/02

Java 101: Understanding Java threads, Part 1: Introducing threads and runnables

Java application users have little patience with poor performance, and threading is one of the best tools we have for allocating application resources efficiently. Jeff Friesen spends the next four articles in the Java 101 series...

05/03/02

Java 101: Classes within classes

Learn the basics of nested top-level classes and inner classes in this Java 101 tutorial.

02/01/02

Java 101: Trash talk, Part 2

Java's garbage collection features tend to confuse new developers. I wrote this two-part series on garbage collection to dispel that confusion. Part 1 introduced you to garbage collection, explored various garbage collection...

01/04/02

Java 101: Trash talk, Part 1

One feature that distinguishes Java from other computer languages is its garbage collection abilities. In this article, Jeff Friesen introduces you to garbage collection and shows how Java's optional support for it affects your...

12/07/01

external url

Java 101: Class and object initialization

Jeff celebrates Java 101's first anniversary with this short primer on class and object initialization in Java programming.

11/02/01

Java 101: The ins and outs of standard input/output

Want to know more about standard Java I/O concepts like standard input, standard output, and standard error? Read on!

03/02/01

Load More