| Similar Articles |
 |
JavaWorld April 2002 Jeff Friesen |
Exceptions to the programming rules, Part 2 Learn about Java's exceptions class hierarchy, how to extend those classes, how to throw objects created from exception classes, how to catch thrown objects and handle the exceptions they represent, and how to clean your code...  |
JavaWorld August 2000 Gaurav Pal & Sonal Bansal |
Exceptions in Java: Nothing exceptional about them The judicious and proper use of the Java exception-handling mechanism can pay rich dividends by delivering quality code that works. In order to use the powerful error-handling features of Java, users must understand key issues that impact its design and implementation.  |
JavaWorld August 2001 Brian Goetz |
Exceptional practices, Part 1 Exceptions provide a powerful mechanism for handling error conditions in Java programs. However, many developers don't spend enough time thinking about exceptions during the design process; instead, they let the development process drive the program's use of exceptions...  |
JavaWorld September 2001 Brian Goetz |
Exceptional practices, Part 2 A specific technique -- exception chaining -- that you can use to preserve important debugging information. Exception chaining is so useful and widely applicable that it has been added to the Throwable class in JDK 1.4 (Merlin)...  |
JavaWorld May 2, 2003 Jeff Friesen |
Datastructures and algorithms, Part 1 After presenting basic datastructure and algorithm concepts, this article focuses on the array datastructure and associated algorithms. The article concludes with the assertion that Java's arrays are objects.  |
JavaWorld October 3, 2003 Paul Philion |
Beware the dangers of generic Exceptions Java provides a rich exception-handling framework, but many programmers find it easier to ignore that richness and simply use generic Exceptions. This article explores the risks of throwing, catching, and ignoring generic Exceptions.  |
JavaWorld November 2001 Jeff Friesen |
Class and object initialization An exploration of class and object initialization, which introduces the strange concepts of the <clinit> and <init> methods...  |
JavaWorld August 1, 2003 Allen Holub |
Why extends is evil Improve your code by replacing concrete base classes with interfaces  |
JavaWorld October 2002 Jeff Friesen |
Java's character and assorted string classes support text-processing Text-processing is one of the more frequent activities in which computer programs engage. Java supports that activity via the Character, String, StringBuffer, and StringTokenizer classes. This article explores each class and introduces you to an assortment of those classes' methods.  |
JavaWorld August 2001 Jeff Friesen |
Object-oriented language basics, Part 5 Every Java class has a superclass. In the absence of an extends keyword, Object is that superclass. Object takes center stage as this article presents its 11 methods...  |
JavaWorld February 2001 Geoff Friesen |
Non-object-oriented language basics, Part 3 This exploration of Java's non-object-oriented language entities wraps up with a tour of statements. It provides an in-depth discussion on those source code constructs and demonstrates their proper use through a large example program...  |
JavaWorld June 13, 2003 Jeff Friesen |
Datastructures and algorithms, Part 2 This article concludes a two-part series that explores two important computer science topics: datastructures and algorithms.  |
JavaWorld February 2002 Anders Eliasson |
Implement Design by Contract for Java using dynamic proxies The Design by Contract (DBC) theory can dramatically raise software quality and reusability levels by forcing you to think in terms of contracts. Contracts formally specify the responsibility relationship between a client (class user) and a supplier (class). Additionally, DBC clearly separates specification (what) from implementation (how). This article explains DBC's importance in object-oriented development and describes a DBCProxy framework that achieves DBC transparently in Java using dynamic proxy classes.  |
JavaWorld December 2001 Jeff Friesen |
Trash talk, Part 1 One feature that distinguishes Java from other computer languages is its garbage collection abilities. In this article, This article introduces garbage collection and shows how Java's optional support for it affects your programs...  |
JavaWorld February 2002 Jeff Friesen |
Classes within classes As with fields and methods, Java allows classes to be members of other classes. This article explores Java's support for class nesting...  |
JavaWorld August 2002 Guy Gur-Ari |
Empower RMI with TRMI Transparent Remote Method Invocation (TRMI) extends RMI to simplify the creation of distributed applications by allowing centralized RemoteException handling and by allowing any interface to be used remotely. This article tours TRMI's inner workings.  |
JavaWorld December 2001 Wm. Paul Rogers |
J2SE 1.4 premieres Java's assertion capabilities, Part 2 This installment discusses the methodology behind using assertions. Assertions are a valuable tool in assuring program correctness and should not be confused with the program robustness facilitated by Java's exception-handling process...  |
JavaWorld February 2001 Oliver Enseling |
iContract: Design by Contract in Java The Design by Contract technique stresses the importance of explicitly specifying the constraints that hold before and after a software component executes. The iContract Java language extension implements Design by Contract for Java.  |
JavaWorld May 2002 Ryan Daigle |
Eliminate JDBC overhead Most J2EE and other types of Java applications interact in some way with information persisted in a database. Interfacing with that database involves several iterations of SQL statements, connection management, transaction lifecycles, result processing, and exception handling. The many parts of this ritualistic dance are common in all contexts; however, this replication doesn't have to exist. This article outlines a flexible framework that remedies the repetition of interacting with a JDBC-compliant database.  |
JavaWorld September 2001 Jeff Friesen |
Object-oriented language basics, Part 6 Learn why Java's standard class library contains empty interfaces (such as Cloneable and Serializable). Also, examine the power of interfaces and learn why they provide more than a workaround for Java's lack of multiple implementation inheritance support...  |
JavaWorld April 2001 Geoff Friesen |
Object-oriented language basics, Part 1 An introduction to object-oriented programming and how to declare classes and create objects from those classes...  |
JavaWorld December 2001 Brian Goetz |
Exceptional practices, Part 3 Exceptions provide a powerful mechanism for handling error conditions in Java programs. Part 3 covers message catalogs, a technique you can use to simplify the process of localizing your application for foreign markets. The use of message catalogs has additional benefits beyond localization -- they make it practical for documentation writers and human interface designers, rather than developers, to control the error messages.  |
JavaWorld September 2000 Bruce Eckel |
Everything is an object, Part 1 This two-part article, excerpted from Chapter 2 in Thinking in Java 2nd. ed., moves you to the point where you can write your first Java program. Bruce Eckel gives an overview of the essentials...  |
JavaWorld December 2000 Mark Johnson |
C#: A language alternative or just J--?, Part 2 Despite their enormous similarities, Java and C# differ greatly in many language details and also in their basic technical intent. This second article of a two-part series covers C# language constructs and concludes with some speculation on the idea of standardizing C#...  |
JavaWorld October 3, 2003 Dawid Weiss |
Discover new dimensions of scripted Java This article presents an extension to BeanShell that turns scripts into real Java classes that support inheritance, Java reflection, method overriding, and so on. The extension is designed to be fully transparent to the Java application using it.  |
JavaWorld May 2001 Jeff Friesen |
Object-oriented language basics, Part 2 In this article, you'll gain an understanding about fields, parameters, and local variables and learn to declare and access fields and methods...  |
JavaWorld October 2001 Jeff Friesen |
Object-oriented language basics, Part 7 This final installment of Java 101's object-oriented programming series explores Java's support for polymorphism and investigates how abstract classes accommodate generalities in class hierarchies.  |
JavaWorld December 2000 Victor Okunev |
Validation with pure Java The importance of employing a good data-validation framework cannot be overestimated. The core Java API has everything you need to solve this problem in the most elegant way.  |
JavaWorld October 2001 |
Java 101 study hall Brush up on Java terms, learn tips and cautions, and enter the first Java 101 reader challenge  |
JavaWorld November 2000 Geoff Friesen |
Applications, applets, and hybrids This article establishes our bearings and sets sail to the land of applications, applets, and hybrids (an unusual category of Java programs)...  |
JavaWorld January 2001 Geoff Friesen |
Non-object-oriented language basics, Part 2 This month we focus on operators and expressions...  |
JavaWorld December 2001 Bill Pierce |
Diagnose common runtime problems with hprof Ever been a few days from releasing an application when testing reveals a memory leak or something causing the CPU to spin out of control? Few people realize that the Java 2 JDK provides a useful profiling tool called hprof, which you can use to diagnose these behaviors with minimal fuss...  |
JavaWorld December 2000 Michael C. Daconta |
When Runtime.exec() won't This installment of Java Traps discusses one new pitfall and revisits another from the previous column. Originating in the java.lang package, the pitfall specifically involves problems with the Runtime.exec() method.  |
JavaWorld February 2001 Brian Goetz |
Design for performance, Part 2: Reduce object creation Many common Java performance problems stem from class design decisions made early in the design process, long before most developers even start thinking about performance. The author discusses some techniques for reducing temporary object creation...  |
JavaWorld September 2001 Michael T. Nygard |
Master Merlin's new I/O classes The JDK 1.4 beta -- the Merlin release -- unleashes hundreds of new classes. This article walks you through some of the platform's new I/O (input/output) capabilities: nonblocking I/O, character conversion, memory-mapped files, and buffer management...  |
JavaWorld April 2001 Piet Jonas |
Secure type-safe collections A framework that overcomes the standard Java Collections Framework's main problem: its containers lack the ability to restrict themselves to storing objects of a specific type. The solution uses reflection, wrapper classes, and a collection of static factory methods...  |
JavaWorld July 18, 2003 James Carman |
Get down to business In this article, you will learn how to structure your applications such that modifications to the business object implementation do not require changes to the user interface using a simple framework for accessing your business objects.  |
JavaWorld November 2001 Michael C. Daconta |
Practice makes perfect One pitfall stumbled on while porting an Extensible User Interface Language (XUL) game to Java and two pitfalls sent in by readers...  |
JavaWorld June 2001 Jeff Friesen |
Object-oriented language basics, Part 3 The author explores composition and demonstrates its value in object-oriented programming. Composition and inheritance are design consepts related in a manner similar to both sides of the same coin...  |
JavaWorld June 2000 |
Letters to the Editor (June 23, 2000) Jason Hunter addresses a gripe with calling instanceof when using JDOM; Mark Johnson responds to feedback on his XML series; reader challenges Tony Sintes about whether it truly is impossible to write a swap method...  |
JavaWorld June 2001 Todd Sundsted |
Secure your Java apps from end to end, Part 1 The foundation of Java security: virtual machine and byte code security...  |
JavaWorld January 2002 |
Letters to the Editor Does J2EE violate fundamental Java concepts? Are Java extensions with XSLT truly beneficial? How do you incorporate a visual mode with Struts and Tiles? Plus, readers debate the value of enums, propose an additional advantage to EJB, and comment on exception-handling...  |
JavaWorld September 2001 Ashok Mathew & Mark Roulo |
Accelerate your RMI programming Beginning with JDK 1.1, serialization and Remote Method Invocation (RMI) were added to the Java platform. RMI usually runs slower than equivalent CORBA or remote procedure call (RPC) solutions. Fortunately, RMI was designed so that you could apply hand optimizations...  |
JavaWorld August 2002 Greg Holling |
Put Java in the fast lane This article presents some techniques for locating performance bottlenecks in Java applications and offers suggestions for improving Java performance. Along the way, you'll look at some of the classes in the new java.nio package.  |
JavaWorld November 2001 Michael J. Rettig |
Reflection vs. code generation You can use the power of Java's Reflection API to reduce tedious code writing, and use active code generation to overcome reflection limitations...  |
JavaWorld July 25, 2003 David Geary |
Make your apps fly Allocating numerous objects can degrade your application's performance. This article shows how to implement the Flyweight design pattern to greatly reduce the number of objects your application creates, which decreases your app's memory footprint and increases performance.  |
Military & Aerospace Electronics July 2005 Adam Kolawa |
Reducing software security vulnerabilities through unit testing Buffer overflows are the most common type of attack to exploit military and aerospace systems, but common industry best practices -- like unit testing and coverage analysis -- can help prevent these attacks.  |
JavaWorld March 2001 Robert Nielsen |
Working in Java time If you know how to work with dates in Java, it is relatively easy to learn to work with time. This tutorial shows you how to bridge that learning gap...  |
JavaWorld October 2000 Robert Hustead |
Mapping XML to Java, Part 2 This article develops a SAX API-based class library that is easily extended to create XML-to-Java mapping code. First, we explore the important ideas that drive the need for the class library. Then we develop a basic approach for implementing the library as well as a few samples that demonstrate some more advanced topics on parsing XML with the SAX API...  |
Linux Journal February 7, 2002 Jack Dennon |
A Bison Tutorial: Do We Shift or Reduce? A shift-reduce conflict is the result of an ambiguity in the grammatical specification of a language, in our case, a programming language. The terms "shift" and "reduce" are explained in the course of this article...  |