This is the second part of the University of Helsinki’s free massive open online course (MOOC) on Object-Oriented Programming with Java. The course is split up into two individual courses: Java Programming I and Java Programming II. Each course consists of seven parts, each with its own exercise set.
Those present in the repo are my solutions to the exercises I held from 27/05/2020 to 12/09/2020 of the Java Programming 2, Part 8 to 14.
- Short recap
- Programming exercise: Cubes
- Programming exercise: Average of positive numbers
- Programming exercise: Liquid containers (3 parts)
- Programming exercise: Liquid Containers 2.0 (2 parts)
- Programming exercise: To do list (2 parts)
- Hash Map
- Quiz: Retrieve from a hash map
- Programming exercise: Nicknames
- Quiz: Object as a HashMap value
- Programming exercise: Abbreviations
- Programming exercise: Print me my hash map
- Programming exercise: Print me another hash map
- Programming exercise: I owe you
- Similarity of objects
- Quiz: Equals
- Quiz: Equals and ArrayList
- Programming exercise: Same date
- Programming exercise: Hash for date
- Programming exercise: Vehicle Registry (3 parts)
- Grouping data using hash maps
- Programming exercise: Dictionary of many translations
- Programming exercise: Storage facility (2 parts)
- Fast data fetching and grouping information
- Quiz: Part 8 learning objectives
- Class inheritance
- Programming exercise: ABC (2 parts)
- Programming exercise: Person and subclasses (5 parts)
- Quiz: Inheritance
- Quiz: Polymorphism
- Quiz: Polymorphism in your own words
- Programming exercise: Warehousing (7 parts)
- Programming exercise: DifferentKindsOfBoxes (3 parts)
- Interfaces
- Programming exercise: TacoBoxes (2 parts)
- Programming exercise: Interface In A Box (4 parts)
- Quiz: Interfaces and polymorphism
- Programming exercise: List as a method parameter
- Programming exercise: Map as a method parameter
- Programming exercise: Set as method parameter
- Programming exercise: Online shop (8 parts)
- Object polymorphism
- Programming exercise: Herds (2 points)
- Programming exercise: Animals (4 parts)
- Summary
- Quiz: Part 9 learning objectives
- Handling collections as streams
- Programming exercise: Average of Numbers
- Programming exercise: Average of selected numbers
- Programming exercise: Positive Numbers
- Quiz: Filter
- Programming exercise: Divisible
- Programming exercise: Printing User Input
- Programming exercise: Limited numbers
- Programming exercise: Unique last names
- Programming exercise: Weighting (2 parts)
- Programming exercise: Reading Files Per Line
- Programming exercise: Books from file
- The Comparable Interface
- Quiz: Ordering by the number of pages
- Programming exercise: Wage order
- Programming exercise: Students on alphabetical order
- Programming exercise: Literacy comparison (2 parts)
- Programming exercise: Literature (3 parts)
- Other useful techniques
- Quiz: How many strings?
- Quiz: How many strings this time?
- Quiz: Regular expression
- Programming exercise: Regular expressions (3 parts)
- Programming exercise: Enum and Iterator (4 parts)
- Programming exercise: Sort them cards! (6 parts)
- Summary
- Quiz: Part 10 learning outcomes
- Class diagrams
- Programming exercise: Customer
- Programming exercise: Book and plane
- Programming exercise: Show and ticket
- Programming exercise: StudentAndUniversity
- Programming exercise: The Player And the Bot
- Programming exercise: Saveable person
- Programming exercise: Bigger class diagram
- Quiz: Class diagram with the help of the yUML service
- Packages
- Programming exercise: First packages (3 parts)
- Programming exercise: Three packages
- Quiz: Flight control in own words
- Programming exercise: FlightControl (2 parts)
- Exceptions
- Programming exercise: Validating parameters (2 parts)
- Quiz: Stacktrace
- Programming exercise: Sensors and temperature (4 parts)
- Processing files
- Quiz: Main differences between classes meant for writing
- Programming exercise: Saveable Dictionary (4 parts)
- Conclusion
- Quiz: Part 11 learning outcomes
- Type parameters
- Quiz: Type parameters
- Programming exercise: Hideout
- Programming exercise: Pipe
- Quiz: Why doesn't the program work?
- ArrayList and hash table
- Quiz: Printing an array
- Programming exercise: Sum these for me
- Programming exercise: List (2 parts)
- Quiz: Copying values of a hash map to a new map.
- Programming exercise: Hash map (3 parts)
- Randomness
- Programming exercise: Numbers
- Programming exercise: Die
- Programming exercise: Lottery
- Multidimensional data
- Programming exercise: Array as a string
- Programming exercise: Magic square (4 parts)
- Summary
- Quiz: Part twelve learning outcomes
- Graphical user interfaces
- Programming exercise: My first application
- UI components and their layout
- Quiz: "Tree Table View" Component
- Programming exercise: Button and label
- Programming exercise: Button and TextField
- Programming exercise: BorderPane
- Programming exercise: Text statistics
- Event handling
- Programming exercise: Notifier
- Programming exercise: Text statistics, part II
- Application's launch parameters
- Programming exercise: User's title
- Multiple views
- Programming exercise: Multiple views
- Programming exercise: Greeter
- Programming exercise: Joke
- Programming exercise: Vocabulary practice
- Programming exercise: Tic-tac-toe (3 parts)
- Summary
- Quiz: Part 13 learning outcomes
- Data visualization
- Programming exercise: Shanghai
- Programming exercise: Finnish parties
- Programming exercise: Savings calculator (3 parts)
- Quiz: Chart program in your own words
- Programming exercise: Unfair Advertisement
- Programming exercise: Cycling statistics
- Multimedia in programs
- Programming exercise: Smiley
- Programming exercise: Collage (3 parts)
- Programming exercise: Hurray
- Larger application: Asteroids
- Quiz: Ship and asteroid
- Programming exercise: Asteroids (4 parts)
- Maven and third-party libraries
- Programming exercise: Database
- Conclusion
- Quiz: Part 14 learning outcomes