This is my first Wiki attempt. My idea is to collect JavaLanguage tips and tricks while I am learning how to program in Java. I have used student-websites before as a personal memo-technique, and of course for exchanging ideas with fellow students. However, working with Frontpage is quite laborious, so I have decided to test the WikiWikiWeb. I will try to produce short and concise articles about Java issues. Feel free to comment or make changes.
Just starting
- LearningJava
- JavaHelloWorld - Build and run a "Hello world!" program in Java
- JavaVisibility - About the visibility of class members (public, private, etc.).
Java basics
- JavaIdioms - A large collection of Java patterns and solutions
- JavaArrays - Arrays and strings in Java
- JavaMethods - About passing arguments to methods in Java, which is very different from C++
- JavaInterface - This language construction does not exist in C++, in return we have to do without multiple inheritance
- Java InnerClasses - Class declarations are very flexible in Java. Smart, once you get the hang of it
- JavaUnit - For building automated tests, instead of demos.
- JavaDoc - About the JavaDoc tool for generating documentation from inline code comments
- JavaExceptionHandling - Overview of Java techniques for robust error handling
- JavaCollections - Java collection classes, that is abstract data structures such as Array, Stack, List, Set, etc.
- JavaMultithreading - Concurrency is well supported in Java, but as always with multithreading you need to know exactly what you are doing
- JavaIo - File handling and input/output streams in Java
- JavaNio - Non-blocking IO for Java since 1.4 (some documents, from Sun and others, suggest it stands for New IO)
- JavaSecurity - Security and access rights
- FasterJava - Tips and techniques for performance measurement and tuning
- JavaNativeInterface - How to call native non-Java programs from Java programs using JNI
- JavaInternationalisation - Multi-language support in Java
Java GUI
- JavaAwtToolkit - Demonstrates a few JavaPatterns
- JavaAwtComponents - Overview of graphical components in Java AWT. Simple examples of a GUI application and an Applet
- JavaSwing - The successor of JavaAwtToolkit
- JavaEventHandling - Managing graphical components (buttons, text fields, etc.) and handling events from these components is smart in Java compared to MS Windows API
- DebuggingApplets - Demonstrates how to show debugging information from an Applet
- JavaLayoutManagement - GUI design in Java is a piece of cake once you get the hang of it. In fact it seems so easy that GUI design tools and wizards may be unnecessary!?
Distributed Systems
- JavaSockets - A two way communication protocol which allows two Java programs (that may run on different machines) to communicate
- JavaDataBaseConnectivity (JDBC)
- JavaNamingAndDirectoryInterface
- JavaRemoteMethodInvocation
- JavaServlets - Building web services in java
- JavaServerPages - Launching inline Java code from a HTML page
- JavaXml - Introduction to the XML standard and description of the SAX XML parser
- EnterpriseJavaBeans - Description of Enterprise Java Beans for distributed, component-based systems. This issue will probably be subdivided into:
- EjbArchitecture: RMI (Remote Method Invocation), IIOP, CORBA, J2EE (Java 2 Enterprise Edition) standard
- EjbHierarchy: Entity Beans (Component Managed Persistence / Bean Managed Persistence ), Session Beans (Stateful / Stateless )
- EjbInterfaces : Bean class: business logic, Remote interface: called by the client, Home interface: manages bean life cycle; create(), find(), remove(), Key class: entity beans only, contains primary key
- EjbExecutionEnvironments - Description of different EJB execution environments; EJB container: EJBs, Web container: Servlets og Java Server Pages (JSP), Application-client container: J2SE ???, Applet container: web browser
- EjbAlternatives - When and where should EJBs be used?
- EjbTools - Tips on tools for generating beans from a database schema and vice versa
Other useful Java links
- JavaLinks
- JavaIde
- JavaRmi
- http://java.sun.com/ - Sun's Java site
- http://www.dina.kvl.dk/~sestoft/javaprecisely/ - Java handbook giving a compact description of the language
- http://www.javabog.dk/ - Danish textbook on Java and Object-Oriented programming
- http://www.ergnosis.com/java-spec-report/ - The unofficial Java Spec report. Errors and shortcomings in Suns specification of Java, JVM og APIs
- http://sunsite.dk/DJUK/ - the Danish Java Developer Club (DJUK)
- http://www.javaeksperten.dk/ - Forum for java developers in Denmark
- http://home.worldonline.dk/~qjava/ - Quick Java Certification