Java basics
Variables, control flow, methods, arrays, collections, exceptions. The foundation Programming I builds on.
- Variables and types
- Control flow
- Methods and scope
- Arrays and lists
- Exceptions
- Input / output
JAVA · 1:1 · 60 MIN · FROM €50.00/H
Live with senior developers from the industry. We work on your real code, your real exam, your real project. No textbook drills, no lectures.
Dennis LIVE Senior Java Software Engineer · 11 yrs industry responds ≤ 2 h , View profile Free first conversation →
Already decided? Straight to a session →
Free intro call, €0 · Single session €59.99/h · First hour €47.99 with code ERSTIS26
Live from a real session
// equals + hashCode go together @Override public boolean equals(Object o) { if (this == o) return true; if (!(o instanceof User u)) return false; return id.equals(u.id); }
We start where you stand, not where the syllabus begins. Pick your profile to see the typical topic map. In the first chat we adapt it to you.
From first Hello World to Spring Boot REST APIs. We focus on what is actually tested or used in your context, not on every paragraph of the syllabus.
I built Study IT because I have seen first-hand how IT teaching at university falls apart.
The people who teach here know code from real projects. Practice decides, not the diploma.
Reach me directly: marcel.schmidtpeter@study-it.education
Dennis ist unser Java-Spezialist: Senior Java Software Engineer mit 11 Jahren Industrieerfahrung. Java, Spring, C# und Python aus echten Projekten, nicht aus Tutorials.
„Programmieren versteht man, wenn man weiß, warum eine Lösung funktioniert. Mein Ziel: dass du Code nicht abschreibst, sondern selbst hinkriegst."
Pay per session or grab an hour pack. You decide, and you can stop any time, because there is no contract to escape from.
A real, anonymised question from a 1:1 session, and how Dennis answered it. So you can see how deep and concrete an explanation gets.
public boolean equals(Object o) {
Buch other = (Buch) o;
return this.titel.equals(other.titel);
} In the test someone calls new Buch("Effi").equals(null). Should return false, but crashes. I heard something about a „contract" in the lecture, but I do not get what is wrong here.
One question, three real bugs, one fix that survives the next edge case too.
Dennis · Tutor 12 min later Answer , View profile Three bugs at once, classic equals trap. Let us walk through them:
The equals contract says: x.equals(null) must return false, never throw. First line in the method body: if (o == null) return false;
If someone calls buch.equals("Effi"), the cast (Buch) o blows up as a ClassCastException. Check with getClass() or instanceof first.
Even if o is a Buch: if your own titel is null, NPE in this.titel.equals(...). Fix: Objects.equals(this.titel, other.titel).
@Override
public boolean equals(Object o) {
if (o == null || getClass() != o.getClass()) return false;
Buch other = (Buch) o;
return Objects.equals(this.titel, other.titel);
} Rule of thumb: equals always follows the same shape. 1) null? 2) same class? 3) compare fields with Objects.equals(). And ALWAYS override hashCode() when you override equals(), otherwise you break HashMap and HashSet.
That is exactly what happens in your session: we read your code and find the line that does not fit.
Concrete sessions, concrete artefacts. You decide after the first chat whether we follow this arc fully or jump straight to the urgent block.
First chat plus first paid hour: where do you stand, where are the gaps, what is the actual goal?
OOP, methods, control flow, arrays. We patch the basics so the rest can stack on top.
Streams, generics, Spring, JDBC: whatever your exam or project asks. On your real code.
Past papers, mock interview, IHK project rehearsal. Tested under time, with honest feedback.
30 minutes to talk, then you decide. NPE, equals, streams: whatever is blocking you, we walk through it live.
Three related programmes that share the same 1:1 senior-dev approach.