Useful Links from the Professor – 10

"You need to get through the tenth level, of course! And not 'as soon as possible', but 'as well as possible'! Don't rush. Learn the theory and then complete the tasks. Here are some useful articles on the subject matter."

"I'm a little confused about widening/narrowing... It seems like a simple topic, but…"

"That's normal! Our wonderful articles will help you. And not just with widening and narrowing."

Widening and narrowing of primitive types

"To start, let's re-read about widening and narrowing of primitive types (those types that are not objects). This is the simplest thing, but can be forgotten quickly without practice. So, let's read and practice."

Fixed values in Java: final, constants, and immutable

"Everything flows and changes in Java... except things marked with the final modifier (i.e. marked as CONSTANT). Do you already know why that word is written in uppercase letters? If not, this article will tell you why. You'll also learn why the state of some objects can't be changed, and how to use this property."

instanceof and Inheritance 101

"What belongs to who, and who's related to what? In Java, things aren't quite like they are in life: if you're higher in the hierarchy, then everything belongs to you, and if you are lower in the hierarchy... Don't know what I'm talking about? Yep, about inheritance... And about the very, very useful instanceof operator. I strongly recommend that you start using it in your programs!"

Wrappers, unboxing, and boxing

"Since you have a good grasp on primitive types, you should read more about wrapper classes. These are classes that look and act like their similarly named primitive types, but they are, in fact, real classes. In this article, you'll learn who needs them and why, and how to use them. "

How to use the Enum class

"You already know how to create classes. But what would you do if you needed to limit a range of values in your class? Until the release of Java 1.5, developers had no choice but to come up with their own solutions to this problem. The Enum class was introduced in the release to provide a common solution. It has quite a few capabilities along with some peculiarities. This article will teach you more about how Enum differs from other classes."

That reading took me some time, but reading them all till the end, i find myself more confident in understanding Java concepts and i found my weak spots, as for example :
i forgot/didn't remember that when we do: (a == i++) => a==i is done first, then i++.
And i refreshed my knowledge of Strings Objects and their major use in Java, the big part pf lessons was related to how to make value comparisons correctly == & Object.Equal().
About passing values to methods by references or by values (not sure about tautology rules here)
About Immutability of wrapper classes like String , Integer , StackTrace...
About Inheritance & etends(i write it all from memory now, means that maybe i will remember this for a bit longer))), Enums and so on ... My fingers eager to code now, Let's go!