CS111: Introduction to Computer Science with Java


Boston University Seal Boston University
College of Arts and Sciences
Computer Science Department

CS 111: Introduction to Computer Science, Fall 2006
Contact Info Course Description Books & Software Labs Assignments Examples

Please report broken links to azs@bu.edu
Class meeting Concept Examples from class
Thu 7 September General Java syntax, Standard output
HelloWorld.java
Tue 12 Sept Standard output
Variables, data types, constants
Assignment statements
BasicOutput.java
DataTypesAndVariables.java
Thu 14 September String data type
Arithmetic
Casting
AboutString.java
Arithmetic.java
FunWithCasts.java
Tue 19 September Using pre-defined classes, calling methods.
Math and Scanner class
InputFromKeyboard.java
HigherMath.java
Thu 21 September Object reference variables.
Object creation using new.
Calling methods and passing arguments
Introduction to Graphics (coordinates, drawing, basic Colors)
Drawing.java [some code to get us started]
Drawing.java (the drawing I did in class)
Tue 26 September Object creationg (revisited), using constructors.
Factory methods for object creation
Mutator/Accessor methods
ObjectCreation.java
FactoryMethods.java
Thu 28 September String object, methods
Expressions, selection using if statements.
AboutString.java
Expressions.java
Selection.java
Tue 3 October Selection: continued
Comparing floating point numbers,
comparing objects (e.g. String),
Switch statements
ComparingFloatingPoint.java
ComparingObjects.java
SwitchExample.java
Thu 5 October Repetition using while loops and do-while loops.
Sentinel-controlled repetition.
RepetitionExample.java
YesOr.java
BusyLoop.java
ValidatingUserInput.java
Thu 12 October Counter-controlled repetition.
Repetition using for loops
CounterControlledRepetition.java
StringReplacement.java
Tue 17 October User-defined classes
member variables, constructors,
methods
Circle.java
UsingCircle.java
Thu 19 October User-defined classes: constructors, methods
toString, equals methods
DrawingCircle.java [some starter code]
Circle.java
UsingCircle.java [updated client code]
DrawingCircle.java [my drawing]
Tue 24 October User-defined classes:
returning multiple parameters
static data members and methods
Circle.java
UsingCircle.java
Thu 26 October Introducing arrays
Array indicies, operations.
ScalarVsArray.java
ArrayWithInitializerList.java
ArrayTraversal.java
Tue 31 October
Review of arrays, lab08 revisited
Copying arrays, shallow vs deep copy
Arrays of Objects
Vector.java
ArrayHolder.java
TestArrayHolder.java
ArrayOfObjects.java
Thu 2 November
Multidimensional Arrays
RainfallPerHour.java
StaggeredArray.java
Tue 7 November
Introducing Recursion
- using non-static methods
RecursionExample.java
Thu 9 November
Recursion:
- using non-static methods
- multiple base cases
- discussing efficiency
RecursionExample.java
ArrayHolder.java
FindCombinations.java
Tue 14 November Inheritance, class hierarchies
Constructor chaining, overridden methods
PlayingGames.java
Thu 16 November Access-modifiers revisted (public, protected, private)
Polymorphism
PlayingGames.java [continued]
Tue 21 November Abstract methods and classes
Exceptions, handling in try-catch
ThinkingInAbstract.java
PlayingWithFire.java
Thursday 30 November File Input/Output
ReadingFromAFile.java
WritingToAFile.java
AppendToFile.java
Tue 12 December How to run a java program from outside of Eclipse, using a script file to launch the program. connect4.bat (windows example)
connect4.mac.txt (Mac example)



Created by: Aaron Stevens, azs@bu.edu
http://www.cs.bu.edu/courses/cs111
Last update: 12 December 2006