---
# System prepended metadata

title: Lecture 3 Setup/Prep
tags: [Setup]

---

---
tags: Setup
---

# Lecture 3 Setup/Prep

In lecture 3, we will learn 
- how to express a datatype that covers more than one class

We will continue building on the `Dillo` and `AnimalTest` starter files from lecture 2. In addition, we will need two more classes: one for an additional animal, and one for a Zoo. We've also extended `AnimalTest` to include some `Boa` examples.
- [Boa.java](https://brown-cs18-master.github.io/content/lectures/03interfaces/initcode/Boa.java)
- [Zoo.java](https://brown-cs18-master.github.io/content/lectures/03interfaces/initcode/Zoo.java)
- [AnimalTest.java](https://brown-cs18-master.github.io/content/lectures/03interfaces/initcode/AnimalTest.java)

If you just want to download all four files as one directory/package, [here's a zip file](https://brown-cs18-master.github.io/content/lectures/03interfaces/initcode/lec03.zip). You can unzip this into your lectures project's `src` directory within IntelliJ.

## Prep
- Glance at the files and note any questions that you have.

- If you'll want to code along in IntelliJ, make a new package for `lec03`. Put all four files in there (`Dillo`, `Boa`, `Zoo`, `AnimalTest`). If you copied over the `lec02` files to `lec03`, note that you'll need to edit the package name at the top of the `Dillo` and `AnimalTest` files to now read `lec03`.

- If you try to run the `main` method in `lec03/AnimalTest` and get an error that `Dillo` or `AnimalTest` is defined twice, the problem is that we have to tell IntelliJ that we only want to work with the `lec03` files right now. To do that, right click on the `lec02` folder within the `src` folder in IntelliJ. Near the bottom of the menu, you will see an option `Mark Directory As`. Click on that, and select `Excluded`. This tells IntelliJ to ignore all files in the `lec02` package when you run your program.
