description

This is a remedial Java class, covering the fundamentals of Java. The course is designed for students with some programming experience, but if you have none and are motivated you will do fine.

The class is taught by Anastasia Bezerianos and is organized in six 3h sessions. You are welcome to only attend the sessions with topics you are not familiar with, just give the instructor some warning ahead of time. The scheduled maybe slightly altered depending on how we are progressing in the class, so make sure to check the schedule regularly (we'll also discuss any changes in class).


news

06/09: MAJOR SCHEDULE UPDATE! Please look at the updated topics and timeline. Also check the updated exercises for session 3 (homework is whatever is not crossed out).

05/09: homework for tomorrow Tue is to try to do Session1-Exercise3, and Session2-exercise3 (parts one and two). If you run into problems note them down and we'll discuss them in class either on Tue or Wed morning (that is mostly going to be exercise solving).

31/08: please note that for now there are no classes on Tue and Thu afternoon.


pratical info

Classes take place in the PUIO building, room E202 E204

You can contact Anastasia at (Prenom.Nom@lri.fr).

Don't forget to add [RJ] in the title!


before the class

If you have a laptop you can work on it during the class, just make sure to have Java and eclipse installed before coming to the first class. Instructions can be found here. If you do not have a machine, the class will take place in a computer room, so eclise and java will already be installed.


classes

Java basics (Mon 5/9 @ 9:30am)

Introduction to Java, basic types and syntax.

Here are the Class Slides, the Code used for class examples, and the Execrises we will do.

OOP (Mon 5/9 @ 13:30pm)

A first look at object oriented programming, the principle of abstraction and encaptulation, the notion of Object and Class.

Here are the Class Slides, the Code used for class examples, and the Execrises we will do.

Inheritance (Tue 6/9 @ 9:30am)

Class inheritance and polymorphism are the main topic, but we will also discuss briefly packages and object collections.

Here are the Class Slides (updated due to typos), the Library code and the RPG starting code used in class. The Execrises have also been updated, ignore exercises in red.

Exceptions Exercises and ArrayLists (Wed 7/9 @ 9:30am)

We will be going over solutions from examples in previous days, and we'll introduce ArrayLists. If we progress fast, we will move to the next part.

Exceptions are the main topic, but we will also discuss briefly Jar files and any questions and left over stuff from previous lectures.

We'll use the same Class Slides as in previous session, and the same Execrises. We can now do all parts (including red ones).

I/O More inheritance, and exceptions (Wed 7/9 @ 13:30pm)

We will finish up on inheritance (interfaces vs class), and introduce exceptions.

We'll discuss standard input/output and file reading/writing.

Class Slides and the Execrises (updated) we will do.

Threads I/O (Thu 8/9 @ 9:30am)

We'll discuss standard input/output and file reading/writing.

Threads are the main topic of this lecture (but may be adjusted depending on class needs).

Class Slides and the updated Execrises from the previous session we will do.