Sharpen your Java skills and boost your potential as an IT specialist. This book introduces you to the basic Java features and APIs needed to prepare for a career in programming and development.
You'll first receive an introduction to Java and then explore language features ranging from comments though exception/error handling, focusing mainly on language syntax and a few select syntax-related APIs. This constitutes the heart of the book, and you'll use these building blocks to construct simple Java programs, and learn where Java's implementations of expressions (and operators), and statements diverge from other languages. The final few chapters tour some additional APIs such as the Math class, related types, String and StringBuffer, and System.
Along the way you'll discover some interesting programs, such as Graph (a sine/cosine wave-plotting application) and WC (a word-counting application). Two appendixes provide quick references to Java's supported reserved words, and to Java's supported operators. Equipped with this knowledge, Learn Java Fundamentals will provide you the pathway to explore additional APIs on your own, and increase your Java awareness.
What You'll Learn
Who This Book Is For
Developers, programmers, and students with little or no Java experience
Learn Java for Android Development, Second Edition teaches programmers of any skill level the essential Java language and foundational Java API skills that must be learned to improve the programmer's chances of succeeding as an Android app developer. Each of the book's 14 chapters provides an exercise section that gives you the opportunity to reinforce your understanding of the chapter's material. Answers to the book's more than 500 exercises are provided in an appendix. A second appendix provides a significant game-oriented Java application, which you can convert into an Android app.
Once you complete this book, you should be ready to dive into beginning Android app development. Maybe, start that journey with Apress' Beginning Android.
Android development is hot, and many programmers are interested in joining the fun. However, because this technology is based on Java, you should first obtain a solid grasp of the Java language and its APIs in order to improve your chances of succeeding as an effective Android app developer. This book helps you do that.
Each of the book's 16 chapters provides an exercise section that gives you the opportunity to reinforce your understanding of the chapter's material. Answers to the book's more than 700 exercises are provided in an appendix. A second appendix provides a significant game-oriented Java application, which you can convert into an Android app.
Once you complete this one-of-a-kind book written by Jeff Friesen, an expert Java developer and JavaWorld.com columnist, you should be ready to begin your indie or professional Android app development journey.
Java I/O, NIO and NIO.2 is a power-packed book that is an accelerated guide and reference on buffers, files, sockets, datagrams, and pipe channels as found in the Java I/O, NIO, and NIO.2 reference implementations. In this book, you'll also learn how and when to use selectors, regular expressions, including patterns, matchers and more. You'll learn how to work with Charsets, formatters and scanners. You'll - all in all - learn how to use and apply NIO, NIO.2 and the enhancements available.
After reading and using this book, you'll gain the accelerated knowledge and skill level to really build applications with efficient data access, especially for today's cloud computing streaming data needs.
Learn Java for Android Development
Once you complete this book, you will be ready to dive into Android, and you can start that journey by obtaining a copy of Beginning Android 2.
Android Recipes: A Problem-Solution Approach guides you step-by-step through a wide range of useful topics using complete and real-world working code examples.
In this book, you'll start off with a recap of Android architecture and app fundamentals, and then get down to business and build an app with Google's Android SDK at the command line and Eclipse. Next, you'll learn how to accomplish practical tasks pertaining to the user interface, communications with the cloud, device hardware, data persistence, communications between applications, and interacting with Android itself. Finally, you'll learn how to leverage various libraries and Scripting Layer for Android (SL4A) to help you perform tasks more quickly, how to use the Android NDK to boost app performance, and how to design apps for performance, responsiveness, seamlessness, and more.
Instead of abstract descriptions of complex concepts, in Android Recipes, you'll find live code examples. When you start a new project, you can consider copying and pasting the code and configuration files from this book, then modifying them for your own customization needs. This can save you a great deal of work over creating a project from scratch!
Beginning Java 7 guides you through version 7 of the Java language and a wide assortment of platform APIs. New Java 7 language features that are discussed include switch-on-string and try-with-resources. APIs that are discussed include Threading, the Collections Framework, the Concurrency Utilities, Swing, Java 2D, networking, JDBC, SAX, DOM, StAX, XPath, JAX-WS, and SAAJ. This book also presents an introduction to Android app development so that you can apply some of its knowledge to the exciting world of Android app development.
This book presents the following table of contents:
Chapter 1 introduces you to Java and begins to cover the Java language by focusing on fundamental concepts such as comments, identifiers, variables, expressions, and statements.
Chapter 2 continues to explore this language by presenting all of its features for working with classes and objects. You learn about features related to class declaration and object creation, encapsulation, information hiding, inheritance, polymorphism, interfaces, and garbage collection.
Chapter 3 focuses on the more advanced language features related to nested classes, packages, static imports, exceptions, assertions, annotations, generics, and enums. Additional chapters introduce you to the few features not covered in Chapters 1
through 3.
Chapter 4 largely moves away from covering language features (although it does introduce class literals and strictfp) while focusing on language-oriented APIs. You learn about Math, StrictMath, Package, Primitive Type Wrapper Classes, Reference, Reflection, String, StringBuffer and StringBuilder, Threading, BigDecimal, and BigInteger in this chapter.
Chapter 5 begins to explore Java's utility APIs by focusing largely on the Collections Framework. However, it also discusses legacy collection-oriented APIs and how to create your own collections.
Chapter 6 continues to focus on utility APIsby presenting the concurrency utilities along with the Objects and Random classes.
Chapter 7 moves you away from the command-line user interfaces that appear in previous chapters and toward graphical user interfaces. You first learn about the Abstract Window Toolkit foundation, and then explore the Java Foundation Classes in
terms of Swing and Java 2D. Appendix C explores Accessibility and Drag and Drop.
Chapter 8 explores filesystem-oriented I/O in terms of the File, RandomAccessFile, stream, and writer/reader classes.
Chapter 9 introduces you to Java's network APIs (e.g., sockets). It also introduces you to the JDBC API for interacting with databases along with the Java DB database product.
Chapter 10 dives into Java's XML support by first presenting an introduction to XML (including DTDs and schemas). It next explores the SAX, DOM, StAX, XPath, and XSLT APIs. It even briefly touches on the Validation API. While exploring XPath, you encounter namespace contexts, extension functions and function resolvers, and variables and variable resolvers.
Chapter 11 introduces you to Java's support for SOAP-based and RESTful web services. As well as providing you with the basics of these web service categories, Chapter 11 presents some advanced topics, such as working with the SAAJ API to communicate
with a SOAP-based web service without having to rely on JAX-WS. You will appreciate having learned about XML in Chapter 10 before diving into this chapter.
Chapter 12 helps you put to use some of the knowledge you've gathered in previous chapters by showing you how to use Java to write an Android app's source code. This chapter introduces you to Android, discusses its architecture, shows you how to
install necessary tools, and develops a simple app.
Appendix A presents the solutions to the programming exercises that appear near the end of Chapters 1 through 12.
Appendix B introduces you to Java's Scripting API along with Java 7's support for dynamically typed languages.
Appendix C introduces you to additional APIs and architecture topics. Examples include Accessibility, classloaders, Console, Drag and Drop, Java Native Interface, and System Tray.
Appendix D presents a gallery of significant applications that demonstrate various aspects of Java.
Unfortunately, there are limits to how much knowledge can be crammed into a print book. For this reason, Appendixes A, B, C, and D are not included in this book's pages. Instead, these appendixes are freely distributed as PDF files. Appendixes A and B are bundled with the book's associated code file at the Apress website (http: //www.apress.com/9781430239093). Appendixes C and D are bundled with their respective code files at my TutorTutor.ca website
(http: //tutortutor.ca/cgi-bin/makepage.cgi?/books/bj7).
This core book, Beginning Java SE 6 Platform, introduces Java programmers who are new to the latest Java SE 6 platform. It does not waste their time rehashing basic Java knowledge. Instead, this book will give them what they need to know regarding the new and enhanced features in Java SE 6.