ISYS 216 -Introduction to Java Programming

Winter 2004



Name: Jon Huhtala
Office: Business 366
Phone: 231-591-2477  (extension 2477 on campus)

When sending e-mail, mention ISYS 216 in the subject line or your e-mail will be deleted.


My Classroom and Office Schedule:






























ISYS 216   ISYS 216   ISYS 216




Office Office Office Office  


ISYS 200 ISYS 200 ISYS 200 ISYS 200  


" " " "  


Course Outcomes:

Upon successful completion of this course, you will be able to:

  1. Explain and use the fundamental components of the Java platform including the compiler and the Java Virtual Machine.

  2. Describe and use Java identifiers, primitive data types, variables, constants, literals, arithmetic operations, conversions, casts, boolean operations, and bitwise operations.

  3. Apply Java decision handling and looping features including if, if-else, switch, for, while, do-while, break, and continue.

  4.  Identify and correct errors in the syntax or logic of a Java program.

  5. Use packaged class methods of the Object, System, Math, String, StringBuffer, and wrapper classes, to read from and write to the console, perform calculations, format data, and manipulate strings.

  6. Define and use custom class methods including overloaded methods.

  7. Demonstrate the use of primitive arrays and object arrays including the ability to pass them to and from a method.

  8. Define and use custom instantiable classes that demonstrate encapsulation of hidden data, overloaded constructors, and a finalizer method.

  9. Define and use subclasses, inner classes, and interfaces that employ abstraction and polymorphism.

You will be prepared for the graphical, event-driven programming of ISYS 316 - Advanced Java Programming. You will also have learned many elements needed to become a Sun Certified Java Programmer.





None is required but a reference can be helpful. Of all Java books on the market, I believe the following are best-suited to accompany this course:


Web Resources:

The primary course Web site is Java Help. It contains the syllabus, class schedule, Java lessons, programming assignments, sample programs, your grade, and links to FREE Java resources.


Required Supplies:

If you are a classroom student, you will need:

If you are an Internet student or a classroom student using you own computer, you will need:



This course consists of 28 lessons which you are to complete on your own within the guidelines of the class schedule.

If you are a classroom student:

 If you are an Internet student:

Each lesson ends with several certification-style review questions. Although you will not be directly graded on these review questions, you must learn how to answer them if you hope to do well on the final exam. You may download or view the answers to lesson review questions as a Word document.


Lab Exercises:

Every lesson will have a graded lab exercise. For credit, you must e-mail your answers to me no later than the due date listed in the class schedule. You will receive a return e-mail with your score and an explanation of your errors within a few days of the lesson's due date.

Each lab exercise will take about 45 minutes to complete and will require you to write and test some Java code. The essential skill of running Java programs must be quickly mastered.


Programming Projects:

You will develop four graded programs this semester. Submission details will be listed in each programming assignment, but the general procedure will be to send me an e-mail on or before the project due date with the program's source code as an attachment. To verify that you are doing this properly, you should send a copy of the e-mail to yourself, extract the source code, and re-test the program. If it works for you, it will probably work for me.

In grading your program, I will compile it and test it to verify that it meets project specifications. I will also check to see that your code is well documented, properly structured, and efficient. For full credit, your program must run correctly and be easy to maintain. You will receive a return e-mail with your project score and an attached solution file within a few days of the project's due date.


Getting Help:

Don't automatically run for help when you encounter a problem. Try to solve it yourself. Look in my lessons, a Java book, the online help facility, my sample programs, etc.. If you're still stuck, it's time to get help.

If you are a classroom student:

If you are an Internet student:

An excellent help resource is the Java in General (beginner) forum of the Big Moose Saloon at Javaranch. To participate, you must register with your real name (no nicknames). If you ask an intelligent (thoughtful) question, you will receive fast, friendly, and FREE help from Java experts around the world. The saloon is never closed.


Final Exam:

At the end of the semester you will take a fifty question, mock Java certification exam covering all course material. The format of the exam will be the same as the review questions at the end of each lesson. No reference materials will be allowed but you may use one blank sheet of scrap paper.

If you are a classroom student:

If you are an Internet student:

The exam is extremely difficult and can only be passed by someone who thoroughly understands Java. The best prepared will be those who have worked hardest on the lessons and projects.



Your grade will be based on either programming projects and lab work or the final exam. It will be the highest grade earned according to the following table:

Projects and Labs %

Final Exam %

Final Grade

  60 - 100


80 -100 50 - 59 B
70 - 79  40 - 49 C
60 - 69 30 - 39 D
0 - 59 0 - 29 F


Note that:


Classroom Policies and Attendance (classroom students ONLY):

It is expected that everyone will conduct themselves in a professional manner by following these rules:


To Succeed:

Java is a demanding language, but the rewards are great. A highly-skilled Java programmer can earn upwards of $100,000 per year. Even if you don't aspire to becoming a programmer, a knowledge of Java and object-oriented programming is helpful to anyone pursuing an IT career.

To achieve this goal: