MCT338 - Advanced Java Programming

Outline info
Last revision date 2018-07-20 11:59:15.834
Last review date 2018-07-20 11:59:26.552

Subject Title
Advanced Java Programming

Subject Description
Designed for students with prior Java programming experience, this subject introduces the student to more advanced Java programming concepts. Topics include I/O classes, multi-threading, Java Beans, networking, image processing and security issues.

Credit Status
Participating students who attend at least 70% of scheduled classes receive a document confirming he/she attended this course.

Learning Outcomes
Upon successful completion of this subject the student will be able to:

1. Understand the Input/Output concepts associated with the Java programming language which includes familiarity with stream processing classes, reader/writer classes, and file management.
2. Develop Java applets/applications which utilize the built-in multithreading capabilities within the Java language.
3. Understand the basic programming concepts associated with developing Java applications which utilize networking.
4. Understand the programming concepts associated with the development of reusable Java Beans objects utilizing the BDK and the BeanBox.
5. Understand the programming design and implementation concepts associated with the development of applications which employ Remote Objects by using the Java RMI procedures.

Cheating and Plagiarism
Each student should be aware of the College's policy regarding Cheating and Plagiarism. Seneca's Academic Policy will be strictly enforced.

To support academic honesty at Seneca College, all work submitted by students may be reviewed for authenticity and originality, utilizing software tools and third party services. Please visit the Academic Honesty site on for further information regarding cheating and plagiarism policies and procedures.

All students and employees have the right to study and work in an environment that is free from discrimination and/or harassment. Language or activities that defeat this objective violate the College Policy on Discrimination/Harassment and shall not be tolerated. Information and assistance are available from the Student Conduct Office at

Accommodation for Students with Disabilities
The College will provide reasonable accommodation to students with disabilities in order to promote academic success. If you require accommodation, contact the Counselling and Disabilities Services Office at ext. 22900 to initiate the process for documenting, assessing and implementing your individual accommodation needs.

MCT337 or equivalent experience

Topic Outline

Java I/O Stream Processing

  • Overview
  • Reading and Displaying Files
  • Filtering Input
  • Pipes  

Multithreading in Java
  • Threads and Thread Groups
  • Thread Synchronization
  • Thread Prioritization  

TCP/IP  Network Concepts Overview
  • TCP/IP Overview
  • Java and the Internet
  • The Java URL Class
  • The InetAddr Class  

Java Socket Concepts
  • TCP/IP Socket Overview
  • Java Socket Classes
  • The Socket Class
  • The ServerSocket Class
  • Multithreaded Server  

Remote Objects
  • Remote Objects Overview
  • Remote Method Invocation (RMI)
  • Setting Up Remote Method Invocation

Introduction to Java Beans
  • Java Beans Overview
  • Developing Java Beans
  • The BDK and the BeanBox  

Java Beans
  • Writing Bean Properties
  • Adding Custom Bean Events
  • Property Editors

Mode of Instruction
This course will be taught via class lectures and discussions, augmented with visual aids and supplemented by hands-on experience in the development of Java applications and applets in the classroom. Typically, the first half of the class will involve the introduction of new concepts, while the second half of the class allows the student to apply these concepts via hands-on exercises.  

Prescribed Texts
The following textbook will be provided:
Core Java Volume II - Advanced Features 9th Ed.
(Pearson Ed.)

Required Supplies
USB Drive

Promotion Policy

Grading Policy
A+ 90%  to  100%
A 80%  to  89%
B+ 75%  to  79%
B 70%  to  74%
C+ 65%  to  69%
C 60%  to  64%
D+ 55%  to  59%
D 50%  to  54%
F 0%    to  49% (Not a Pass)
EXC Excellent
SAT Satisfactory
UNSAT Unsatisfactory

For further information, see a copy of the Academic Policy, available online ( or at Seneca's Registrar's Offices.

Modes of Evaluation
There is no formal testing or process to evaluate the students understanding. It is up to the student to evaluate his/her own progress.  Students must attend 70% of classes to receive a document confirming he/she attended this course.

Approved by: Sharon Estok