Normal view MARC view ISBD view

Java pitfalls : time-saving solutions and workarounds to improve programs / Michael C. Daconta ... [et al.].

Contributor(s): Daconta, Michael C.
Publisher: N.Y. : John Wiley, c2000Description: xiv, 322 p. ; 23 cm.ISBN: 0471361747.Subject(s): Java (Computer program language)DDC classification: 005.133
Contents:
Acknowledgments. - Introduction. - Pt. One. Language Syntax. Item 1: When Is an Overridden" Method Not Really Overridden?. Item 2. Usage of String Equals() Method versus the "==" Operator. Item 3. Java Is Strongly Typed. Item 4. Is That a Constructor? Item 5. Cannot Access Overridden Methods. Item 6. Avoid the "Hidden Field" Pitfall. Item 7 Forward References. Item 8. Design Constructors for Extension. Item 9. Passing Primitives by Reference. Item 10. Boolean Logic and Short-Circuit Operators. - Pt. Two. Language Support. Item 11. Reclaiming References When Using SoftReference Objects. Item 12. Causing Deadlock by Calling a Synchronized Method from a Synchronized Method Item 13. Properly Cloning an Object. Item 14. Overriding the equals Method. Item 15. Avoid Using Constructor for Implementing clone(). Item 16. Method Dispatching with Reflection, Interfaces, and Anonymous Classes. Item 17. Handling Exceptions and OutOfMemoryError. - Pt. Three. Utilities and Collections. Item 18. Ordered Property Keys? Item 19. Handling Occasionally Huge Collections with Caching and Persistence. Item 20. Property File or ResourceBundle? Item 21. Properties Object Pitfalls. Item 22. Using Vector as a Collection Instead of Old API. - Pt. Four. Input/Output. Item 23. Serialization. Item 24. Unicode, UTF, and Streams. Item 25. Sending Serialized Objects over Sockets. Item 26. Try, Catch ... Finally? Item 27. Flushing Image Resources. - Pt. Five. GUI Presentation. Item 28. Providing Progress Feedback. Item 29. Using repaint() instead of validate() for Re-Layout of Components. Item 30. Z-Order and Overlapping Components. Item 31. Solving the Validate, Revalidate, Invalidate Mystery. Item 32. Stacking Items Vertically. Item 33. How to Use GridBagLayout
Properly. Item 34. Avoiding Flicker. Item 35. Components with Embedded HTML. - Pt. Six. GUI Control Item 36. Better Data Validation. Item 37. Desensitizing GUI Components Based on Application State Item 38. Use Threads in Event Handlers to Avoid Freezing Your GUI. Item 39. Model View Controller and JTree. Item 40. How to Data Transfer Something Other Than Text. Item 41. A KeyListener That Doesn't Listen? Item 42. Printing Text, HTML, and Images in a JEditorPane. - Pt. Seven. Performance. Item 43. Lazy Loading Our Way to Better Performance. Item 44. Using Object Pools for Excessive Object Creation. Item 45. Performance Watch: Array versus Vector. Item 46. Avoid Using Temporary Arrays for Dynamic Array Growth. Item 47. Use StringBuffer Instead of '+' for Concatenation inside a Loop.- Pt. Eight. Miscellaneous. Item 48. Is There a Better Way to Debug? Item 49. Encapsulating JNI Calls through Interfaces. Item 50. - Assertions. - Index
Summary: Although using the Java language provides a substantial boost to a programmer's productivity, it still has its share of subtleties and weakness. This book is designed to save you time and frustration by carefully guiding you through this potential minefield. A team of Java experts, led by programming guru Michael Daconta, offers a collection of proven solutions to 50 difficult, real-world problems chosen from their own extensive experiences. You'll find workarounds for problems caused by shortcomings in both Java language itself and in its APIs and Utilities, including java.util, java.awt,and javax.swing. The authors also share techniques for improving the performance of your Java applications. - Back cover.
Item type Current location Shelf location Call number Copy number Status Notes Date due Barcode
Main Collection Taylor's Library-TU

Floor 3, Shelf 1 , Side 2, TierNo 2, BayNo 7

005.133 JAV (Browse shelf) 1 Available SOCIT,15005,03,GR 5000041944

Acknowledgments. - Introduction. - Pt. One. Language Syntax. Item 1: When Is an Overridden" Method Not Really Overridden?. Item 2. Usage of String Equals() Method versus the "==" Operator. Item 3. Java Is Strongly Typed. Item 4. Is That a Constructor? Item 5. Cannot Access Overridden Methods. Item 6. Avoid the "Hidden Field" Pitfall. Item 7 Forward References. Item 8. Design Constructors for Extension. Item 9. Passing Primitives by Reference. Item 10. Boolean Logic and Short-Circuit Operators. - Pt. Two. Language Support. Item 11. Reclaiming References When Using SoftReference Objects. Item 12. Causing Deadlock by Calling a Synchronized Method from a Synchronized Method Item 13. Properly Cloning an Object. Item 14. Overriding the equals Method. Item 15. Avoid Using Constructor for Implementing clone(). Item 16. Method Dispatching with Reflection, Interfaces, and Anonymous Classes. Item 17. Handling Exceptions and OutOfMemoryError. - Pt. Three. Utilities and Collections. Item 18. Ordered Property Keys? Item 19. Handling Occasionally Huge Collections with Caching and Persistence. Item 20. Property File or ResourceBundle? Item 21. Properties Object Pitfalls. Item 22. Using Vector as a Collection Instead of Old API. - Pt. Four. Input/Output. Item 23. Serialization. Item 24. Unicode, UTF, and Streams. Item 25. Sending Serialized Objects over Sockets. Item 26. Try, Catch ... Finally? Item 27. Flushing Image Resources. - Pt. Five. GUI Presentation. Item 28. Providing Progress Feedback. Item 29. Using repaint() instead of validate() for Re-Layout of Components. Item 30. Z-Order and Overlapping Components. Item 31. Solving the Validate, Revalidate, Invalidate Mystery. Item 32. Stacking Items Vertically. Item 33. How to Use GridBagLayout

Properly. Item 34. Avoiding Flicker. Item 35. Components with Embedded HTML. - Pt. Six. GUI Control Item 36. Better Data Validation. Item 37. Desensitizing GUI Components Based on Application State Item 38. Use Threads in Event Handlers to Avoid Freezing Your GUI. Item 39. Model View Controller and JTree. Item 40. How to Data Transfer Something Other Than Text. Item 41. A KeyListener That Doesn't Listen? Item 42. Printing Text, HTML, and Images in a JEditorPane. - Pt. Seven. Performance. Item 43. Lazy Loading Our Way to Better Performance. Item 44. Using Object Pools for Excessive Object Creation. Item 45. Performance Watch: Array versus Vector. Item 46. Avoid Using Temporary Arrays for Dynamic Array Growth. Item 47. Use StringBuffer Instead of '+' for Concatenation inside a Loop.- Pt. Eight. Miscellaneous. Item 48. Is There a Better Way to Debug? Item 49. Encapsulating JNI Calls through Interfaces. Item 50. - Assertions. - Index

Although using the Java language provides a substantial boost to a programmer's productivity, it still has its share of subtleties and weakness. This book is designed to save you time and frustration by carefully guiding you through this potential minefield. A team of Java experts, led by programming guru Michael Daconta, offers a collection of proven solutions to 50 difficult, real-world problems chosen from their own extensive experiences. You'll find workarounds for problems caused by shortcomings in both Java language itself and in its APIs and Utilities, including java.util, java.awt,and javax.swing. The authors also share techniques for improving the performance of your Java applications. - Back cover.