Leanpub Header

Skip to main content

Beginning Java

Dive into the challenging world of software development

Do you like to start with programming apps? Dive into the challenging world of software development with Java. Find out about the basics of the programming language Java as well as programming in common. Learn about software structures and common tasks like testing and improving your software (aka refactoring). Enjoy reading and in practice.

The author is letting you choose the price you pay for this book!

Pick Your Price...
PDF
EPUB
WEB
227
Pages
About

About

About the Book

Today's life is fulfilled with computers and software: Using a personal computer, this might be obvious, but regardless weather you use a mobile phone, a modern television or any smart device, internally all these devices are powered by a CPU and software. Whilst the CPU is just a part of the hardware (the things you can touch), the software determines the behavior.

Visiting the seaside might be wonderful. But it you dive into the water, you'll recognize a seemingly different world. Programming is a challenging task. If you start programming you'll not only get a different view of such devices. You will be able to design the behavior. So lets dive into this amazing world. Like scuba diving, you need to learn a lot before you're able to go in for vast tours. But divers may start soon with their first little practices combined with theory. And so you'll do with Java.

Using this book you'll start programming your first small application after a little preparation. Beside such practical tasks, you'll learn theoretical background. Step by step you will enhance your knowledge.

This might be a cheap book. You may change the recommended price down to 12 US$. Or pay whatever you want. I'm writing this book in my spare time. Maybe that's crazy, cause I could earn much by programming, but I like to teach people. Thus I would be proud, if you pay the recommended price.

I would be happy, if you learn a lot with the assistance of me and my books. Any feedback is appreciated.

This is a living book. Published first in a very incomplete state, I'm going to add or update content irregular. Once purchased, you are able to download all future updates without extra charge.

If you still know about programming foundations and may be some Java basics, I'll recommend this book's advanced sibling: Advancing Java.

If you prefer C# as language of your choice, then take a look at Beginning C#.

Enjoy reading and stay tuned!

Price

Pick Your Price...

Minimum price

$12.00

$33.00

You pay

$33.00

Author earns

$26.40
$

All prices are in US $. You can pay in US $ or in your local currency when you check out.

EU customers: prices exclude VAT, which is added during checkout.

...Or Buy With Credits!

Number of credits (Minimum 1)

1
The author will earn $12.00 from your purchase!
You can get credits monthly with a Reader Membership

Author

About the Author

Michael Müller

Michael Müller is an IT professional with more than 35 years of experience including about 30 years in the healthcare sector. During this time, he has worked in different areas, especially project and product management, consulting, and software development. He gained international knowledge not only by targeting international markets, but also by leading external teams (from Eastern Europe and India).

Currently, he is head of IT (software development, infrastructure, operations) at the German DRG institute [http://inek.org]. In this role, he is responsible for Web applications as well as other Java and .NET projects. Web projects are preferably built with Java technologies such as JSF with the help of supporting languages like JavaScript.

Michael is a JSF professional user and a member of the JSR 344 and JSR 372 (JSF) expert groups. Due to his community activities he was invited to join the NetBeans Dream Team and became a member January 2016.

He frequently reads books and writes reviews as well as technical papers, which are mostly published in German-printed magazines and on his website [it-rezension.de]. Beside that, he irregular blogs about software development [blog.mueller-bruehl.de].

Michael likes to share his knowledge.

Enjoy his writings!

Contents

Table of Contents

Preliminary note

Updates

Cover image

Acknowledgements

Preface

About the Author

About this book

  1. Conventions
  2. Information box
  3. This is a Warning
  4. Exercise
  5. Discussion
  6. Error
  7. Question
  8. Tip
  9. Links
  10. Keyboard
  11. Errors and typos
  12. Copyright
  13. IPart I: Get ready

1Software development

2Prerequisites

3Installing Java

  1. 3.1Installing to Linux
  2. 3.2Installing on Windows

4Installing an IDE

5Hello World

  1. 5.1Translate and run
  2. Clock
  3. 5.2Compile and run manually
  4. Create and examine the jar
  5. Interpreting a single source file
  6. 5.3Build system
  7. 5.4Summary

6HelloWorld explained

  1. 6.1Class
  2. 6.2Method
  3. 6.3Package
  4. 6.4Summary
  5. IIPart II: Discover

7Calling methods

  1. Display packages
  2. 7.1Summary

8Naming and naming conventions

  1. 8.1Method and variable names
  2. 8.2Naming conventions
  3. 8.3Summary

9Math function

10Refactoring

  1. 10.1Summary

11Class and Package

  1. Modules
  2. 11.1Testing
  3. 11.1.1Create tester class
  4. 11.2Refactoring
  5. 11.3Summary

12Maven

  1. 12.1POM
  2. 12.2Folders
  3. 12.3Manifest
  4. 12.4Summary

13Testing with JUnit

  1. Library vs. Framework

14Overflow

  1. 14.1Integer representation and calculation
  2. 14.2Refining the test
  3. 14.3Negative numbers
  4. 14.4Refine square()

15Primitive data types and reserved keywords

  1. 15.1Numeric integer types
  2. 15.1.1decimal, binary and hexadecimal representation
  3. 15.2Numeric floating point types
  4. 15.3Textual types
  5. Char
  6. 15.4Boolean
  7. 15.5void
  8. 15.6Summary

16Loops

  1. 16.1while
  2. 16.2do … while
  3. 16.3for
  4. 16.4Summary
  5. IIIPart III: I’m in love with my car10

17Building cars

  1. 17.1Naive car simulation
  2. Test the simulation
  3. 17.2Data structure
  4. Optimize the app
  5. 17.3Summary

18Object-oriented programming

  1. 18.1Summary

19Version control

  1. 19.1Git
  2. 19.2Summary

20Optimizing Cars

  1. 20.1Getters & Setters
  2. 20.1.1Placement of variables
  3. 20.1.2Sync with the repository
  4. 20.2Car fabric
  5. Testing Cars
  6. 20.3Constructing a Car
  7. 20.4Property Access
  8. 20.5Summary

21Inheritance

  1. 21.1Preparing the project
  2. 21.2Specializing Car
  3. 21.3Investigating inheritance behavior
  4. 21.3.1Visual representation
  5. 21.3.2A closer look onto the objects
  6. 21.4Summary

22Interfaces

  1. 22.1Implementing engines
  2. 22.2Investigating Interface
  3. 22.3Inheritance versus composition
  4. 22.4Summary

23Polymorphism

  1. IVPart IV: Java elements

24Visibility

  1. 24.1Visibility modifiers
  2. 24.2Package
  3. 24.3Scope of variables
  4. 24.4Summary

25Variables, its types and memory

  1. 25.1Differences…
  2. 25.2Primitive types
  3. 25.3Object types (reference types)
  4. 25.4Stack and Heap
  5. 25.5Wrapper classes
  6. 25.6Dissolution of Differences
  7. 25.7Summary

26Objects revised

  1. 26.1Equals and HashCode
  2. 26.2String representation
  3. 26.3getClass and other methods
  4. 26.4Summary

27Data Containers

  1. 27.1Array
  2. 27.1.1Fun with Array
  3. 27.1.2Array based Stack
  4. 27.1.3Multidimensional arrays
  5. 27.2List
  6. 27.2.1Fun with List
  7. 27.3Summary

28Generics

  1. 28.1Summary

29Exception Handling

  1. VPart IV: GUI - graphical user interface

30GUI

31JavaFX

32Updates

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earned over $14 million writing, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub