Module Code &Title

CP2027 Programming in Java

Year of Delivery & Semester

2001/2002 Semester Two

Author Name & Date of issue

Kevan Buckley 16/01/02

Pre-requisites

CP1000 Structured Programming in C++

Co-requisites

None

Module level and Credits

Level 2 15 Credits

Excluded module combinations:

 

Proposed timetable slots with site:

Monday 09:00-13:00 Main site

Module Leader & room number & phone number & email

Dr. Kevan Buckley, MU414,

+44 (0)1902 321836, K.A.Buckley@wlv.ac.uk

School fax number:

+44 (0)1902 321491

Other members & room number & phone number & email

Stuart Slater, 01902 321460, S.I.Slater@wlv.ac.uk

John Williams, 01902 321461, J.R.Williams@wlv.ac.uk

Mary Garvey, 01902 321483, M.Garvey@wlv.ac.uk

Gordon Branson, 01902 321805, G.F.Branson@wlv.ac.uk

Availability of staff:

By email appointment only

Description of Module

The module teaches the use of Java, Sun Microsystems language for the Internet. It assumes knowledge of the syntax of C++. Students taking this module will learn how to construct cross-platform applications, which implement animation, multimedia, and process threads.

Learning Outcomes

At the end of the module, the students will be able to:

Subject Specific Outcomes

Assessment Component

(I) Write a cross-platform Internet-enabled application

(II) Make appropriate use of the Java class library

(II) Discuss the contribution Java makes to the facilities available on the World Wide Web

1

 

1

 

2

Personal Transferable Skills

Assessment Component

2. Organise

5. Act independently

1

1

Weekly programme: (NB: may be subject to amendment)

Teaching Week

Topics

1

Introduction to Java: applications and motivation. Java syntax: literals, numbers, characters and booleans; declarations, scope and blocks; operators; flow of control.

2

Object orientation: objects and classes; class definition in Java; methods; method overloading, member variables, constructors. Final variables, static methods and variables. Creating objects. Object references.

3

Inheritance: subclasses, final classes. Overriding methods: super, final methods. Abstract methods and classes. Encapsulation: public, private, protected. Applets: invoking an applet from HTML. Starting, stopping and shutting down.

4

Wrappers. Arrays, Strings and Vectors. Exception handling: throw, try, catch, finally. Declaring exception handlers. Runtime exceptions.

5

Packages. Java AWT: layouts, components: button, checkbox, choice, label, list, scrollbar, textarea, textfield. Layouts.

6

Interfaces. Event handling. Semantic and low-level events. Listeners and adapters.

7

Callbacks. Inner classes, local inner classes, anonymous inner classes. Graphics: screen updating. paint(), colours, lines, shapes, text and fonts, images.

8

Threads. Concurrent tasks, multiprocessing and processes. Thread states. Priorities. Synchronisation.

9

The runnable interface. Simple animation. HTML applet tags. Java security.

10

Input/Output streams in Java. The URL class. Using TCP/IP sockets as a client and server. Reading remote data. Java and CGI.

11

Java feature and futures. Native methods. JDBC. Java Beans. Java foundation classes. Remote method invocation. Internationalisation. Servlets.

12

Java program design. CRC and UML.

13

Revision and review of module.

14

Examination

Indicative reading and learning support

Essential

Jackson, M. and Wrighton, N., "CP2027 Programming in Java Lecture Notes". Available from Waterstones book shop

Desirable

Deitel, H. and Deitel, P., "Java How to Program: 3rd Edition", Prentice Hall, 1998, ISBN: 0-13-012507-5

Chan, P., Lee, R. and Kramer, D., "The Java Class Libraries Vol 1: 1.2 Supplement", Addison Wesley Longman, 1999, ISBN: 0-201-148552-4

Chan, P., Lee, R. and Kramer, D., "The Java Class Libraries Vol 2: Java.applet, Java.awt, Java.beans", Addison Wesley Longman, 1997, ISBN: 0-201-31003-1

Gosling, J., Joy, B., Steele G. and Steele, G. L., "The Java Language Specification: 2nd Editon", 2000, Addison-Wesley, ISBN: 0-201-31008-2

Teaching and Learning Methods

Lectures, tutorials, workshops. Workshops will use the Windows NT workstations to develop Java programs.

Student contact hours

4 hours per week

Student self directed hours

6 hours per week

Assessment Requirements

Assessment Component 1

Consisting of 2 elements:

Element 1: Interactive Data Entry program 30%

Week of issue: 4 25/02/2002

Deadline: Week 7 18/03/2002

Submission by email to K.A.Buckley@wlv.ac.uk

Element 2: Internet based graphic program 30%

Week of issue: 7 18/03/2002

Deadline: Week 11 29/04/2002

Submission by email to K.A.Buckley@wlv.ac.uk

Assessment Component 2

Consisting of 1 element; a 2 hour examination in the exam period (teaching weeks 14 and 15). (40%)

A pass of D5 or above must be obtained in each of the components (but not necessarily in the elements). Compensation between elements within a component is allowed, but compensation between components is not.

Penalties for late submission of coursework

Standard School of Computing and Information Technology arrangements apply.

ANY late submission (without valid cause) will result in the grade F0 being allocated to the coursework.

Procedure for requesting extensions

Student collects SCIT form entitled "EX01 - request for extension" from the student registry. Student takes form to the appropriate year or personal tutor (not the module leader) who agrees a new submission date. The tutor sends the form to the module leader for agreement.

Assessment Criteria

Issued with each assignment.

Retrieval of Failure

Where a component has been failed and an E grade awarded for the module, reassessment will normally take place in the following September.

Return of assignments

Assignments will be normally returned within three working weeks.

Registration

Please ensure that you are registered on this module. You should see your course leader/personal tutor if you are not sure what this means. The fact that you are attending module lectures and classes does not mean that you are necessarily registered. A grade may not be given if you are not registered.

Cheating

Cheating is any attempt to gain unfair advantage by dishonest means and includes plagiarism and collusion. Cheating is a serious offence. You are advised to check the nature of each assessment. You must work individually unless it is a group assessment. Refer to the subject guide for more details.


Dr. K. Buckley (K.A.Buckley@wlv.ac.uk)