Java: Preface
Purpose of these notes
These notes were started to fill in areas that textbooks didn't adequately teach. Where features were adequately covered in the textbook (eg, loops), you won't find much here. Where features are missing entirely from the textbook (eg, Graphical User Interface (GUI)), there are more notes.
Choices made in these notes
These notes
- Are a mixture of old and new Java features. As, or if, these notes are updated, old features will be deleted and new added.
- Emphasize Graphical User Interfaces. Many texts use simple text input and output. The plan is to move many of the examples from text console input/output to graphical user interfaces using the most recent JavaFX 8 libraries (instead of the older AWT and Swing libraries). Simple console input/output will continue to be used in simple example programs.
- Development Systems
These notes do not assume a particular development system.
For full-strength development, the the best choice is probably the free
IntelliJ IDEA Community Edition.
I have been using Oracle NetBeans, but support for it is being phased out and
its future is uncertain.
There are also many good choices for simpler development systems that may be recommended by your instructor. I haven't been keeping up with them, but they were what I used in my introductory programming classes.
Public domain, not copyrighted
These notes are released into the public domain, which allows you to do pretty much what you want with them. I would appreciate credit, but that's really optional.
Acknowledgements
Thanks to my Java classes at Assumption University, Faculty of Science and Technology, Thailand; Universidad San Francisco de Quito, Departamento de Multimedia, Ecuador; and University of Maryland University College, European Division. In addition, I'd like to thank others who have suggested improvements to these notes (see Acknowledgements).
Fred Swartz, www.fredswartz.com