For Java programming topics, go to the Oracle (Sun) Java site. These are the holy grails of everything regarding Java. For a Wikipedia-style format, just go to wikibooks (as it will have themes in Java and other programming languages, not just OO.)
In addition, the short answer to your question will simply be NO . Programming is too complicated for someone to create the type of material that you specify.
If you are seriously interested in programming (and I mean it seriously), focus on only one language and study it (as opposed to finding the perfect language or trying to analyze all possible alternatives and getting into "paralysis by analysis"). )
Again, if you are serious ...
select one of the following values:
C will cause you to run into serious computing, and people have successfully learned programming using C as programming languages ββ(don't let OO and / or Ruby / Python / Java / .NET fanboys tell you otherwise).
Python and Ruby are extremely beautiful languages ββthat will teach programming, and do not force you to do everything in an object (a really braked idea, more on that below). Scala is another elegant and effective alternative.
Learn the basics of programming First, the analysis and modeling of OO (and not vice versa
Avoid languages ββthat make you write everything in objects. This includes Java and C #. I have been working with Java for 12 years and it is a reliable platform. But this is an inhibited language because it does not allow you procedural programming. Not everything is an object and should not be modeled as an object, sometimes not even in complex systems. People are still struggling with how to program correctly using the OO paradigm, and they continue to fail because they still do not get the capabilities and limitations of modeling and analyzing OO.
So my suggestion is not to learn programming in Java (or C #). Go with a strict procedural (C) or elegant, agnostic paradigm (Python, Ruby, or Scala). Focus on modularity, structured programming and algorithms. Then, later, you will be better prepared to really understand where the OO languages ββgo.
I will not delve into why I chose these 4 options or why I advise against Java and C #. This discussion has been discussed a lot, and you can easily find it on stackoverflow and / or google. This is only my suggestion, based on my experience (Java, etc.), The proposal that I always give to those who are serious about learning programming.
After all, it doesnβt matter which of these four you choose. Just flip a coin, select it and stick to it until you get better with it. Focus on learning the proper programming techniques, decomposing problems and algorithms, not the language itself.
Good luck.
change
I forgot to mention if you are serious about learning programming, buy books. You will not learn about visiting sites. And you have to put your time in it (we say at least 4 hours a day ... I donβt see anyone teaching programming anything less.) Anything less just makes you think about learning movements.