Virginia Western Community College


ITP120 – Java Programming I

Instructor: Diane Wolff


Business Science M310
3099 Colonial Avenue SW
PO Box 14007
Roanoke VA 24038-4007








Distance Learning Only


Special Class Note For Fall 2022 Related to the Coronavirus

Due to the coronavirus challenges, I will not be on campus very much during the fall semester of 2022.  I will be monitoring email essentially 24/7 and we will have a Zoom session every Tuesday evening at 6:00.  I can also get on Zoom for individual help. 


Course Description

ITP 120 Java Programming I (4 CR) Prerequisite: None for the VT section. Entails instruction in fundamentals of object-oriented programming using Java. Emphasizes program construction, algorithm development, coding, debugging, and documentation of console and graphical user interface applications. Lecture 4 hours per week.


ITP 120 is the first semester of Java programming.  The Java programming language is one of the most important computer languages for both client-side and server-side applications. Java allows you write intranet applications and other e-business solutions that are the foundation of corporate computing. It also is integral to the development of client-side applications for everything from games to Droid applications.


This course introduces the fundamentals of general computer programming and specifically, Java.  Topics include decisions, loops, and method calls.  Collections are introduced and include arrays and ArrayLists.


Course Prerequisites

Knowledge of the basic use of computers. 


Getting Registered

Use the following instructions for applying to Virginia Western, registering, and paying for your class.

1.    Apply at  If you have any problems with applying, call the Admissions Office at 540-857-7231. NOTE: Do not declare a major.  Indicate that you are a transient (non-degree seeking) student. Make certain to copy down the seven digit ID (all numbers) that is assigned to you when you apply.

2.   Send the id to and we will help you finish the process of registration.  You cannot register yourself.


Contact Methods and Response Time

I am teaching totally distance learning so the fastest contact method is through email at  I read email just about 24/7 and generally respond within 24 hours if it is not within two days of the due date. This includes weekends.   As due dates get closer, my email load increases dramatically so response may be slower (you can prevent this being a problem for you by starting early.  Discussion forums will usually be answered within 24 hours.  I will be grading right after you submit and grades will usually be posted within 24 hours of the due date.  See more details below.


Office Hours Information

My office is located in M224 in the Business Science building. This office is in the U shape hallway that is located behind the snack machines on the second floor. Please see Canvas for the days and times of my office hours


Attendance / Lateness Policy

This is a distance learning class with assignments due in two-week increments.  There will also be Zoom recordings that you will be expected to watch.  “Attendance” will be determined by submission of your assignments on the due dates.


Student Evaluation


         Introductory survey                                                                 10 points

                        (see instructions in portal on how to complete this)             

            Laboratory assignments 7 @ 50 points each                            350 points   

à NOTE 5 of these points are for comments

            MyProgrammingLab practice                                                 140 points

            Project @ 50 points                                                                 50 points

                                                                                                            550 points

            90%=A   80-89% = B   70-79% = C   60-69% = D 



Make-up / Late Work POLICY

The schedule lists the due dates for each module.  You may progress faster than the schedule but not slower without instructor permission.  This is for your good and mine since I must have all grades in right after the semester is over and I will be reviewing the answers in the Zoom sessions. Any submissions after the due date without instructor permission will be docked 30% if turned in within 24 hours of the due date/time. With previous instructor permission, only 20% off. For EXTREME circumstances, contact me.  No late MyProgrammingLab assignments will be allowed.  


Penalties for Academic Honesty Violations

Each student should consider that they are in this class to learn a critical skill, some of the best skills in the IT industry. I view my role as trying to help you obtain these skills. I expect all submissions to be your own work.  Any assignment/test/quiz where this is not the case will result in a zero.  See Virginia Western policies for more details.


Academic Responsibilities

The materials on this site are only for the use of students enrolled in this course for purposes associated with the course and may not be retained or further disseminated. It is the student’s responsibility to comply with the full Honor Code and Conduct requirements which are described in the Student Handbook. 

Inclement Weather Policy (not a problem for this section since we are DL)


Additional Information

 Virginia Western policies, the course outline, and course syllabus along with additional student resources are available in Canvas.


Important Dates

First Day to Register - April 18    

First Day of Classes – Monday August 22nd         

Last Day to Register/Add a Class – Sunday August 28th         

Last Day to Drop and Receive Refund – Thursday Sept 8th         

Last Day to Withdraw Without Grade Penalty - Wed October 26th       

Last Day of Classes Friday December 9th       


Method of Instruction

All materials will be served from Canvas and MyProgrammingLab. These are where you will submit all of your work.  There are many useful documents and tools on the portal.  We will have synchronous Zoom sessions Tuesday evenings at 6:00 EST.  These will be recorded if you cannot “attend”.   I will also have various other prerecorded movies for many of the modules for extra content.

Course Objectives

Please see Canvas link to the official course outline.



Java, How to Program, 11th edition plus MyProgramming Lab, Paul and Harvey Deitel.  There are three versions.  You can choose an eBook version of the text, a Student Value edition (which is a loose-leaf version) or a regular printed book.  Make certain that the book you get says “early objects.

          ISBN with eBook  978-0134752099

            ISBN with loose leaf printed text 978-0134800301

            ISBN with printed version of text  978-0134800271


NOTE: If you find a cheap version of the text, you can purchase just the access code for the MyProgrammingLab with ISBN 978-0134752105.  Make certain it is the code for Deitel 11th Java Early Objects.



We will be using a version of Eclipse that you can download from Canvas. You can go to  to get the 64 bit download. Instructions for unzipping and use can be found at

Macintosh folks: I have separate instructions for you. The document for use above is still applicable.



A student will receive an Incomplete only under mitigating circumstances. An Incomplete will give the student additional time beyond the end of the semester to complete the course requirements. The student and instructor will decide on an appropriate deadline. Any outstanding work not completed by this agreed upon deadline will result in the Incomplete being changed to an F. An Incomplete will only be given if the student has mitigating circumstances and cannot complete the last few assignments or the final exam on time. Please contact me immediately if you have problems.


Specific Classroom Policies:

  1. Spend 80% of your time coding – not reading! You cannot learn a computer language by reading a book.  SKIM the material in the book, watch the movies, and start on the assignment.  Use the text as a reference and guide.
  2. If you need to drop the class (hopefully no one will have to do so!) you must do it yourself online (I can help you find the link).  The last day to drop this class without an F grade for fall semester is Wednesday October 26th.
  3. Do NOT just download everything from the portal on day 1!! As the faster people work through the material and may have questions, I may add more examples, etc.  I certainly will not make any changes to submission requirements after the start date above and will not significantly change requirements ever (only maybe clarify them).   I will post an announcement with a heads up that the instructions or jar file has changed.   
  4. There will be Zoom online session for every module.  There will be good information during these --- and it is highly suggested that you listen to the recording of them. 
  5. Keep up with the Discord discussion forums since you are responsible for clarifications posted there (hopefully---there will not be too many of them…)
  6. I will be grading all submissions right after the due date of that module, even if you submit early. It is critical that you make your final submission through Canvas only!
  7. As you are working through the material and have questions, you need to do one of two things.  If the question is about a general concept or topics where you would like to see more examples, submit this through the Discord discussion forum.  Do not post large chunks of your code there.  If you want me to look at your specific problems (that is what I am here for!) jar up your file (include ONLY those files needed to make the program where your questions are run!!!) and send it through email to the address above.  Make certain to explain the problem in the text of the email.  I will response VERY quickly to both types of postings.
  8. We will also have face-to-face (for those local to VWCC) and online tutors that can help.  Details during class.
  9. Start early on each module if you can.  I am very receptive to helping all I can, especially early in the module sequence.   However- on the few days before the due date, I may not be able to answer as quickly due to high traffic.
  10. PLEASE CHECK THE PORTAL RIGHT AFTER THE DUE DATE FOR YOUR GRADE!!!    Open up the assignment and you will see my comments. If you have omitted something or misunderstood an instruction, I may put comments here and let you make changes with no penalty for the first module and a five- point penalty after that.  I will not be looking at your submissions until the due date, no matter how early you submit.  You cannot resubmit and correct normal errors. I am only allowing resubmissions if you (for instance) include the .class files instead of the .javas, etc.   You will have the 24 hours to get it back in with changes.  If you do not see my comments within this time, you will not be allowed to resubmit.
  11.  I also want to improve this course for future semester offerings.  For 5 points each module (required), use the textbox on the laboratory submission to give me comments about the module.    Please include positive comments as well as constructive suggested changes for each module.  Noted typos or suggested rewording would be appreciated.  And please include an approximate number of hours spent totally (reading, writing, coding) for the module so I can judge the assignment requirements.  I appreciate your help in this matter. 


Campus Safety
Evacuation procedures: Posted near each classroom entry.  To report an emergency, call 911 or Campus security at 857-7979.

The college has created a campus safety video that each student is required to view. A link to this “Critical Safety Video” is located on one of the links under Syllabus on our Canvas course.

Students are encouraged to register for VW Alert Text Messaging System. To register for the text alerts, go to


Suggestions for Progressing Through a Module

  1. Download the appropriate jar file from the lab assignment. It will always be named itp120modx_21_22.jar where x is the module number.  Import the jar file into Eclipse.
  2. Go to the syllabus and see what chapters the module covers.  Skim/read those chapters and watch the power point movies.  Do not spend a lot of reading. But as you skim, look at the examples from the text (they will always be found in the jar file downloaded above in packages named after the associated chapters).
  3. Get the lab instructions from the assignment in Canvas. It will always be named ITP120Labx_Canvas21_22.doc where x is the module number. Work on these.  Refer to your text as needed.
  4. See if there are auxiliary readings and if so, download them and look them over.
  5. Finish the lab and return the assignment back to me with the completed jar file.
  6. Remember to include your comments about the assignment in the textbox.


Jar File Instructions

  1. Assignments will be turned in as jar files (similar to zip files).  The instructions will indicate how to create these.
  2. Jar files must have the .java files in it (after you jar the file, open it up in an unzipping software and verify this).
  3. Jar files must have only the programs that make the programs that are listed at the bottom of the lab instructions run (delete any that were just my examples).  In some cases you will delete entire extra packages that have just my examples in them.
  4. Make certain there are no stray import statements (to test this, create a new project and re-import your jar file and see if it runs).
  5.  Jar files must have the name of both the package and the actual jar file changed.  For example, if your name is Mike Miller, you will need to change the package name to mmilermod3 and send it to me as mmilermod3.jar.


Further Information for You

This course has been specifically geared towards VTMIT students.  This course was developed in conjunction with the VT professors to give you the specific prerequisite knowledge that they will assume.   I am dedicated to being available to you as needed, and to make this course a very positive learning experience for you.

          If you have comments about what I can do to better serve you, please let me know.

Let’s have a great semester!!!!!  



                                    Due  (MONDAY AT 8 AM EST)  

Survey                 Aug 29th   
Module 1             Sept 5th        Ch 1-2    Intro to Java, Classes, and Objects
Module 2             Sept 19th      Ch 3 (skip 3.6) and 4 (to section 4.7)   Objects, classes, and decisions
Module 3             Oct 3rd         Ch 4 (4.8-4.14) and Ch 5  (skip 5.11)   More constructs, loops
Module 4             Oct 17th       Ch 6 and 8 (skip 6.13, 8.16), Also 14.1-14.5   More Classes, OOP.   
Module 5             Oct 31st       Ch 7  (skip 7.11-7.12, 7.17)  Arrays, ArrayLists, and other Collections  
Module 6               Nov 14th      Ch 9 and 10  (skip 9.7, 10.11)  Adv Inheritance Topics and Interfaces 
Module 7             Nov 28th      Ch 11 and 15   I/O, Exceptions, and JavaDocs
Project                 Dec 12th