Author:Jamie Chan
Have you ever wanted to learn computer programming but were afraid it would be too difficult for you? Or perhaps you already know other programming languages, and are now interested in learning Java. Java can be used to develop applications for desktop, web, and even mobile devices. Java is platform independent, which means a program written in Java can be executed on any operating system, including Windows, Mac and Linux.
Tags
Support Statistics
¥.00 ·
0times
Text Preview (First 20 pages)
Registered users can read the full content for free
Register as a Gaohf Library member to read the complete e-book online for free and enjoy a better reading experience.
Page
1
(This page has no text content)
Page
2
Learn Java In One Day and Learn It Well Java for Beginners with Hands-On Project The only book you need to start coding in Java immediately By Jamie Chan http://www.learncodingfast.com/java Copyright © 2016 All rights reserved. No part of this publication may be reproduced, distributed, or transmitted in any form or by any means, including photocopying, recording, or other electronic or mechanical methods, without the prior written permission of the publisher, except in the case of brief quotations embodied in critical reviews and certain other noncommercial uses permitted by copyright law. Preface This book is written to help you learn Java FAST and learn it WELL. The book does not assume any prior background in coding. If you are an absolute beginner, you'll find that this book explains complex concepts in an easy to understand manner. If you are an experienced coder but new to Java, this book will provide you with enough depth to start coding in Java immediately. Topics are carefully selected to give you a broad exposure to Java, while not overwhelming you with information overload. These topics include object- oriented programming concepts, error handling techniques, file handling techniques and more. In addition, new features of Java such as lambda expressions are also covered. All examples in the book are carefully chosen to demonstrate each concept so that you can gain a deeper understand of the language.
Page
3
In addition, as Richard Branson puts it: "The best way of learning about anything is by doing". This book comes with a project where you’ll be guided through the coding of a membership management software from scratch. The project uses concepts covered in the book and gives you a chance to see how it all ties together. You can download the source code for the project and all the sample programs in this book at http://www.learncodingfast.com/java Contact Information I would love to hear from you. For feedback or queries, you can contact me at jamie@learncodingfast.com.
Page
4
More Books by Jamie Python: Learn Python in One Day and Learn It Well CSS: Learn CSS in One Day and Learn It Well
Page
5
C#: Learn C# in One Day and Learn It Well
Page
6
Table of Contents Chapter 1: Introduction to Java 1.1 What is Java? 1.2 Why Learn Java? Chapter 2: Getting Ready for Java 2.1 Installing the JDK + NetBeans Bundle 2.1.1 What is JDK? 2.1.2 What is NetBeans? 2.2 How to use this book? 2.3 Your First Java Program 2.4 Basic Structure of a Java Program 2.4.1 Package 2.4.2 The HelloWorld Class 2.4.3 The main() Method 2.5 Comments Chapter 3: The World of Variables and Operators 3.1 What are variables? 3.2 Primitive Data Types in Java 3.3 Naming a Variable 3.4 Initializing a Variable 3.5 The Assignment Operator 3.6 Basic Operators 3.7 More Assignment Operators 3.8 Type Casting In Java Chapter 4: Arrays and Strings 4.1 String 4.1.1 String Methods 4.2 Array 4.2.1 Array Methods 4.2.2 Finding Array Length
Page
7
4.3 Primitive Type vs. Reference Type 4.4 Strings are Immutable Chapter 5: Making our Program Interactive 5.1 Displaying Output 5.2 Escape Sequences 5.3 Formatting Outputs 5.3.1 Converters 5.3.2 Flags 5.4 Accepting User Input Chapter 6: Control Flow Statements 6.1 Comparison Operators 6.2 Decision Making Statements 6.2.1 If Statement 6.2.2 Ternary Operator 6.2.3 Switch Statement 6.3 Looping Statements 6.3.1 For Statement 6.3.2 Enhanced For Statement 6.3.4 Do-while Statement 6.4 Branching Statements 6.4.1 Break Statement 6.4.2 Continue Statement 6.5 Exception Handling 6.5.1 Specific Errors 6.5.2 Throwing Exceptions Chapter 7: Object Oriented Programming Part 1 7.1 What is Object-Oriented Programming? 7.2 Writing our own class 7.2.1 Fields 7.2.2 Methods 7.2.3 Constructors 7.3 Instantiating an Object 7.4 Static
Page
8
7.5 Advanced Methods Concepts 7.5.1 Using Arrays in Method 7.5.2 Passing Primitive Type vs Reference Type Parameters Chapter 8: Object-Oriented Programming Part 2 8.1 Inheritance 8.1.1 Writing the Parent Class 8.1.2 Writing the Child Class 8.1.3 The main() method 8.2 Polymorphism 8.3 Abstract Classes and Methods 8.4 Interfaces 8.5 Access Modifiers Revisited Chapter 9: Collections 9.1 The Java Collections Framework 9.2 Autoboxing and Unboxing 9.3 Lists 9.4 ArrayList 9.4.1 ArrayList Methods 9.5 LinkedList 9.5.1 LinkedList Methods 9.6 Using Lists in our Methods Chapter 10: File Handling 10.1 Reading a Text File 10.2 Writing to a Text File 10.3 Renaming and Deleting Files Chapter 11: Advanced Java Topics 11.1 Generics 11.1.1 Bounded Types 11.2 Functional Interfaces and Lambda Expressions Chapter 12: Project 12.1 Overview
Page
9
12.2 The Member Class 12.3 The SingleClubMember Class 12.4 The MultiClubMember Class 12.5 The Calculator Interface 12.6 The FileHandler Class 12.7 The MembershipManagement Class 12.8 The JavaProject class Appendix A Index
Page
10
Chapter 1: Introduction to Java Welcome to Java programming and thank you so much for choosing my book among the large selection of Java books available. Whether you are a seasoned programmer or a complete novice, this book is written to help you learn Java programming fast. Topics are carefully selected to give you a broad exposure to the fundamental concepts of Java while not overwhelming you with information overload. While it is not possible to cover every single Java concept in this book, rest assured that by the end of the book, you should have no problem writing your own Java programs. In fact, we will be coding a program together as part of the project at the end of the book. Ready to start? Let’s first answer a few questions: 1.1 What is Java? Java is an object-oriented programming language developed by James Gosling at Sun Microsystems, which has since been acquired by Oracle Corporation. It was released in 1995 and is currently one of the most popular programming languages in use. It can be used to develop applications for a large variety of environments, such as applications for desktop, web and even mobile devices. One of the main features of Java is that it is platform independent. This means that a program written in Java can be executed on any operating system (such as Windows, Mac or Linux). Like all modern programming languages, Java code resembles the English language which computers are unable to understand. Therefore, Java code has to be converted into machine code through a process known as compilation. Every computer platform has its own machine code instruction set. Hence, machine code that is compiled for one platform will not work on another platform. Most programming languages (like C and C++) compile written code into machine code directly. As a result, this machine code can
Page
11
only be run on the specific platform that the code is compiled for. Java does it a little differently. Instead of compiling into machine code directly, Java compiles all written code into bytecode first. Bytecode is platform independent. That is, there is no difference between the bytecode for Windows, Mac or Linux. When a user wants to run a Java program, a program inside the user’s computer (known as the Java Virtual Machine or JVM) converts this bytecode into machine code for the specific platform that the user uses. The advantage of using this two-step compilation process is that it allows Java code to be run on all platforms as long as the computer running the Java program has JVM installed. JVM is free to download and there are different versions for different computer platforms. We’ll learn how to install JVM in the next chapter. 1.2 Why Learn Java? There are a lot of reasons why one should learn Java. Let’s look at some of the reasons below. Firstly, Java is currently one of the most popular programming languages in use. According to Oracle, 3 billion devices run Java. Furthermore, Android apps are also developed using Java. With the growing demand for mobile apps, it is safe to say that Java is an essential language to learn if you are interested in becoming a programmer. Next, Java has syntax and features that resemble other programming languages like C and C++. If you have any prior programming experience, you will find learning Java a breeze. Even if you are totally new to programming, you can rest assured that Java is designed to be a relatively easy language to learn. Most programmers find it easier to learn Java than say, C or C++.
Page
12
Java is also designed to be platform independent. As mentioned earlier, Java code is compiled into bytecode first, which can be run on any machine that has the Java Virtual Machine. Hence with Java, you can write the code once and run it anywhere you want. Next, Java is an object-oriented programming (OOP) language. Object- oriented programming is an approach to programming that breaks a programming problem into objects that interact with each other. We’ll be looking at various object-oriented programming concepts in this book. Once you master Java, you will be familiar with these concepts. This will make it easier for you to master other object-oriented programming languages in future. Convinced that Java is a great language to learn? Let’s move on.
Page
13
Chapter 2: Getting Ready for Java 2.1 Installing the JDK + NetBeans Bundle Before we can start developing applications in Java, we need to download and install the free JDK + NetBeans bundle provided by Oracle. 2.1.1 What is JDK? JDK stands for Java Development Kit and is a free kit provided by Oracle that contains a number of tools to help us develop Java applications. Some of these tools include a compiler to compile our written code into bytecode (javac.exe), an archiver to package and distribute our Java files (jar.exe) and a documentation generator to generate HTML documentation from our Java code (javadoc.exe). In addition, JDK also includes the Java Runtime Environment (JRE). JRE contains the JVM mentioned in Chapter 1 and the resources that JVM needs in order to run Java programs. If you are only interested in running Java programs, all you need is the JRE. However, since we are also interested in developing Java programs, we need the JDK. 2.1.2 What is NetBeans? Besides JDK, we also need to install NetBeans. NetBeans is an Integrated Development Environment (IDE) that we’ll be using to facilitate our coding process. Strictly speaking, we can develop Java applications without using NetBeans. We can write our code in Notepad (or any other text editor) and compile and execute them using the tools provided in JDK. The screenshot below shows an example of how this can be done.
Page
14
However, while it is possible to develop Java applications using the JDK alone, this process is tedious and error-prone. To make coding easier, you are strongly encouraged to use an IDE. An IDE includes a text editor with advanced features for us to write our code, and provides us with a graphical user interface to debug, compile and run our applications. As we’ll see later, these features will help greatly when coding. The IDE that we’ll be using is NetBeans provided by Oracle. To download the JDK + NetBeans bundle, head over to http://www.oracle.com/technetwork/Java/Javase/downloads/jdk-netbeans-jsp- 142931.html You will be presented with a large number of download options which can be overwhelming at first. The version that you’ll be downloading depends on the operating system that you are using. x86 and x64 refer to the 32-bit and 64- bit operating systems respectively. For instance, if you are using the 32-bit
Page
15
Windows operating system, you’ll be downloading the “Windows x86” version. Go ahead and download the application. Once you are done installing it, you are ready to start coding your first Java program. 2.2 How to use this book? However, before we do that, I would like to highlight the fact that most of the code in Java consists of rather long statements. Hence, some statements may wrap around to the next line in this book. If you have problems reading the code samples, you can download the source code for all the sample programs at http://www.learncodingfast.com/java. 2.3 Your First Java Program Now, let’s start coding our first program. To do that, let’s launch NetBeans and select File > New Project…. from the top menu bar. You’ll be prompted with the New Project dialog box. Select Java under Categories and Java Application under Projects. Click Next to continue. On the next screen, name the project HelloWorld and take note of where the project is stored. Finally, click Finish to create the project.
Page
16
You will be presented with a default template that NetBeans created for you automatically. Replace the code in the template with the code below. Note that line numbers are added for reference and are not part of the actual code. You may want to bookmark this page for easy reference later when we discuss the program. You can also download the source code for this sample program and all other sample programs in this book at http://www.learncodingfast.com/java. If you prefer not to type the whole program below, you can just delete all the lines with forward slash (/) and/or asterisk (*) on the left in the template and add lines 6 and 7 to it. 1 package helloworld; 2 3 public class HelloWorld { 4 5 public static void main(String[] args) { 6 //Print the words Hello World on the screen 7 System.out.println("Hello World"); 8 } 9 10 }
Page
17
However, I strongly encourage you to type the code yourself to get a better feel for how NetBeans works. As you type, you will notice some interesting features of NetBeans. For instance, you’ll see that words are displayed in different colours. This is the software’s way of making our code easier to read. Different words serve different purposes in our program and are thus displayed using different colours. We’ll go into more details in later chapters. In addition, you will also notice that a box appears near the cursor with some help messages occasionally. That is known as Intellisense. For instance, when you type a period (.) after the word System, a dropdrop list appears to let you know what you can type after the period, with a box that provides further information. Finally, also note that NetBeans will automatically close brackets for you when you type an opening bracket. For instance, when you type “(“, NetBeans will add the closing bracket “)” for you. These are some of the features that NetBeans provides to make coding easier for us. After you finish typing, save the program by selecting File > Save. NetBeans has a “Compile on Save” feature that compiles the code whenever you save it. You can then execute the compiled program by clicking on the Run button at the top menu (refer to image below).
Page
18
If your program fails to run, there will be a pop up box with an error message. Click Run Anyway to continue. You will then see a description of the error in the output window (refer to next image). Alternatively, you can also hover your mouse over the red squiggly line in the text editor window. That will provide you with another clue about what went wrong. Try to identify and correct the mistake and run the program again.
Page
19
If all goes well, you will see the following in the output window. run: Hello World BUILD SUCCESSFUL (total time: 0 seconds) This program simply displays the words “Hello World” in the output window. The other two sentences are additional information provided by NetBeans and are not part of our program output. That’s it! You have successfully coded your first program. Give yourself a pat on the shoulders. The name of the Java file that you just wrote is HelloWorld.java. You can find the name at the top of the text editor window (refer to image above). 2.4 Basic Structure of a Java Program
Page
20
Now, let us do a quick run-through of the basic program that you just coded. 2.4.1 Package On the first line, we have the statement package helloworld; This statement tells the compiler that the Java file we wrote belongs to the helloworld package. A package is simply a grouping of related classes and interfaces. Do not worry if you do not know what classes and interfaces are, we’ll cover them in subsequent chapters. When we write package helloworld; at the top of our file, we are asking the compiler to include this file in the helloworld package. The compiler will then create a folder named “helloworld” and save the file into that folder. Files that belong to the same package are stored in the same folder. If you navigate to your “NetBeansProjects” folder now, you’ll find a folder named “HelloWorld”. The “NetBeansProject” folder is normally located in your “Documents” folder. If you can’t find this folder, try searching for it using your computer’s search function. Within the “HelloWorld” folder, you’ll find a “src” folder that contains the “helloworld” folder. This folder stores the files of the helloworld package. It is a convention for us to name our packages in lowercase. Note that Java is a case-sensitive language. Hence, “HelloWorld” is not the same as “helloworld”. Inside the “helloworld” folder, you’ll find the HelloWorld.java file. The advantage of declaring packages is that it prevents naming conflicts. Two
Comments 0
Loading comments...
Reply to Comment
Edit Comment