Checking Java Programs
Copyright © 2007 O'Reilly Media, Inc.
March 30, 2007
Abstract
This Short Cut tells you about tools that will improve the quality of your Java code, using checking above and beyond what the standard tools do, including:
Using javac options, JUnit and assertions
Making your IDE work harder
Checking your source code with PMD
Checking your compiled code (.class files) with FindBugs
Checking your program's run-time behavior with Java PathFinder
Quick, is there anything wrong with this code and, if so, what is it? You can assume that the code is part of a class (it's actually in intro/Action.java) and that the whole class compiles without error:
1 public void actionPerformed(ActionEvent e) { 2 try { 3 if (fileName != null && !doingSaveAs) { 4 doSave(fileName); 5 return; 6 } 7 if (chooser == null) { 8 chooser = new JFileChooser(); 9 } 10 int returnVal = chooser.showOpenDialog(theFrame); 11 if (returnVal == JFileChooser.APPROVE_OPTION) { 12 File file = chooser.getSelectedFile(); 13 if (file.exists() && doingSaveAs) { 14 int ret = JOptionPane.showConfirmDialog(theFrame, 15 "File already exists, overwrite?", "File Exists", 16 JOptionPane.YES_NO_OPTION); 17 System.err.println(ret); 18 if (ret != 0); // "Yes" is the 0th option... 19 return; 20 } 21 doSave(file); 22 } 23 } catch (IOException e1) { 24 error("Can't save file", e1); 25 } 26 }
If you spotted the error in ...
Get Checking Java Programs now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.