Jump to ratings and reviews
Rate this book

Objects First with Java: A Practical Introduction Using BlueJ

Rate this book
Objects First With Java, 3rd edition has been fully updated to include the latest features of Java 5.0, including generics. It continues to use the BlueJ environment which helps students to visualize and interact with objects and classes from the beginning.

480 pages, Paperback

First published October 23, 2002

20 people are currently reading
155 people want to read

About the author

David J. Barnes

18 books2 followers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
59 (29%)
4 stars
54 (27%)
3 stars
47 (23%)
2 stars
25 (12%)
1 star
14 (7%)
Displaying 1 - 19 of 19 reviews
Profile Image for Murtadha.
32 reviews25 followers
May 19, 2022
A deep dive into the world of object-oriented programming, using Java as the vehicle for this journey.

The book is generally designed to be supplemented with the presence of a tutor, but it is still entirely possible to make use of around 90% of the material if the subject is self-studied. The only thing lacking is directed solutions for the activities, which, if I’m not mistaken, are only available for tutors.

There are also various sections about functional programming.

This book won’t make you a competent Java programmer but it will still give you a deep understanding of the core concepts —often tricker parts— of the language, namely object-orientation and particularly inheritance.

Inheritance features heavily, with 3 entire chapters dedicated to it. It’s the most substantial topic in the book and rightly so. Approaching inheritance and choosing the right abstraction construct requires some thought and some practice, and these three chapters towards the end walk you through that in a gentle manner so you come out with a proper foundation. You’ll learn how to use subclasses, superclasses, abstract classes and methods, interfaces, subtyping, method dispatch and polymorphism, among other inheritance concepts.

Is Java the best language to learn today? I can’t tell. But I can say that it’s a great language to grasp the idea, concepts and techniques of object-oriented programming (OOP). And this book has made a great use of that, with its clear writing style and slow yet deep exploration of the subject.
Profile Image for Liesbeth Jongkind.
3 reviews1 follower
December 12, 2016
At first I thought I did not understand this book because I did not understand java. I re-read almost every sentence.
Then I did an online java mooc at mooc.fi and now I am re-reading this book.
And I still think it is hard to understand.
The problem is the style. The style is very very sloppy and informal. It makes me want to re-write almost every sentence.
When learning a programming language and al sorts of new concepts, I need language to be very precise. This book is NOT.
one example: "If an item with a low index number is removed, then the collection moves all subsequent items along by one position to fill in the gap."
The problem for me is the wording 'with a low index number". This is bullshit. For starters , what is low and what is high is completely subjective. But what is more important: This happens when an item with ANY index number is removed, except when it is the last item with the HIGHEST POSSIBLE index number. This sort of sloppiness makes it very hard to understand what is MEANT instead of SAID. As if learning java is not hard enough by itself .
Find another book or do a mooc.
11 reviews1 follower
January 25, 2019
This was the course material for the first semester of CS, and even though Java is maybe the language I know best, I still found parts of this book immensely useful. This is because it not only focuses on Java keywords and classes such as most introductory books do, but also on advanced design principles for classes and systems of classes. Chapter 8 and 15 gave me new ways of thinking about what good design is, and what my failures in the past have been. Concepts such as coupling, cohesion, RDD and design patterns should really be obligatory in all introductory OOP courses! My approach to writing programs has drastically changed, thanks to a book I was all to eager to reject at the start of the semester. It has my respect.
Profile Image for Eric Brooke.
111 reviews18 followers
April 17, 2013
This is a good book for a programmer who wants to learn Java (you will have to slow down) or someone with no experience with programming. It uses BlueJ which coming from a programmer background is a little painful but for someone with no experience is most excellent. It gets you into some good habits and allows to visualize what you have created. Unlike a lot of programmer books this book was visually pleasing and used effective use of colour to relay information.
Profile Image for Thenia.
4,388 reviews180 followers
August 7, 2012
A very well organized book about a complex programming language. Simply explained with lots of examples and suggestions.

Ready to start programming with Java!
Profile Image for Fernando Rojas.
2 reviews
March 17, 2014
I've read the entire book, made more than 80% of the exercises.
I got the idea, and I am using the book in my courses.
I strongly recommend it.
1 review
November 29, 2018
This was the first programming textbook I read, and I found it very useful. It built up constructs and concepts in a methodical way and gave interesting examples including a text adventure, a media player, cellular automata, an image-processing program, and a environmental simulation. These were all very basic but were interesting as a first glance at the kind of things you can do when you know how to code.

I think anyone other than a complete novice would find it quite tedious, but for a complete novice it is a good way to go from knowing nothing about programming to knowing something.
Profile Image for Marcela Mayora.
8 reviews1 follower
November 28, 2023
This book is meant for beginners but the way it is written makes it hard to understand. I had to read it because of my uni’s curriculum.

If you want to learn Java from scratch (not knowing a thing about programming, like I did) I recommend the MOOC.fi courses “Java programming I” & “Java programming II” by the university of Helsinki (100% free).

This book however, is valuable if you want to understand inheritance. I found their explanations of this particular concept thorough and well put. They also go very deep into it dedicating several chapters to it.
5 reviews
February 14, 2023
Very good introduction to the Java programming language. The book is perfect for someone with no programming experience as well as someone with a little programming experience.
The focus of the book is OOP and it teaches it in a very easy to understand way.
Profile Image for Macarena Jamett Álvarez.
12 reviews1 follower
April 30, 2023
Maravilloso libro para introducirte en la programación orientada a objetos con java, el sofware propuesto es bluej que es muy visual a la hora de tratar esa tematica, es muy bueno a la hora de comprender este estilo de programación
Profile Image for Ciar.
6 reviews
May 30, 2024
Un poco lento al principio, pero los personajes molan
Profile Image for Seth.
49 reviews1 follower
July 7, 2008
I started off entranced by the prospect of teaching my students to program based on object-oriented design, which holds a lot more computer science credibility and appeal than the traditional flow of control approach.

I still think that object-oriented design is a good way to start. But I won't be using this book again: it just isn't very well organized. I found that my students were yearning -- specifically and concretely -- for more information on iterative constructs early on, and that later chapters were a mish-mash of unrelated ideas. Chapter 5 came to be referred to as the "trivial pursuit" chapter.
164 reviews5 followers
April 26, 2022
pretty good intro, especially for uni.
Profile Image for Joe Cole.
169 reviews349 followers
April 11, 2017
It gives a different approach to Object Oriented Programming which makes it easy to learn. It contains many exercises, which is good because it takes a lot of practice to learn programming.
Displaying 1 - 19 of 19 reviews

Can't find what you're looking for?

Get help and learn more about the design.