Unit 41 Programming in Java

Quick Upload



To provide learners with an understanding of the principles of programming in Java, exploring the object oriented nature of the language and the multi-platform versatility offered.

Unit abstract

Object oriented programming is an industry-proven method for developing reliable modular programs and is popular in software engineering and systems development. Consistent use of object oriented techniques can lead to shorter development lifecycles, increased productivity, adaptable code, reuse of different technologies, the interaction of different systems using common platforms and therefore lower the cost of producing and maintaining systems. Java is synonymous with the object orient paradigm offering all the features of the technology in a format that can be used on many differing systems. The development of systems with Java objects simplifies the task of creating and maintaining complex applications. Many environments use Java as its ‘underpinning’ framework, with Java applications found on mobile phones, dedicated systems, web-based multimedia, security and control systems as well as traditional applications and bespoke operating systems. Learners taking this unit will have the opportunity to develop their understanding of the Java programming language and develop code suited to a range of platforms. The unit is not specific to one instance of the Java programming language and may be used to deploy, among others, mobile applications, bespoke applications or web-based solutions.

Learning outcomes

1. Understand the principles of programming in Java

  • Characteristics: Java Virtual Machine (JVM); Java platform; classed-based; object-oriented; compilers; class libraries; applications; applets; object models; enforced error handling; concurrency; threads, multi-platform
  • Reasons for choice of language: organisational policy; suitability of features and tools; availability of trained staff; reliability; development and maintenance costs; expandability
  • Object models: inheritance; polymorphism; encapsulation; public classes; private classes; public methods; private methods
  • Data structures: public instance variables; private instance variables; naming conventions; arrays (one-dimensional, two-dimensional); file structures; loops eg conditional (pre-check, post-check, break-points), fixed; conditional statements; case statements; logical operators; assignment statements; input statements; output statements
  • Data types: constants and literals; integer; floating point; byte; date; boolean; others eg character, string, small int; choice of data types eg additional validation, efficiency of storage Environment: features eg interpreted, run time environment, system specific libraries
  • Programming syntax: features eg command rules, variable declaration, class/method declaration
  • Standards: features eg use of comments, code layout, indentation

2. Be able to design Java solutions

  • Requirements specification: overview eg inputs, outputs, processing, user interface; constraints eg hardware platforms, timescales for development; delivery environment eg mobile, hand-held, web based, desktop; interaction eg data exchange, compliance, compatibility, standards
  • Program design: tools eg structure diagrams, data flow diagrams, entity relationship models, flow charts, pseudo code, class diagrams, class responsibilities, collaboration cards; 
  • Technical documentation: requirements specification; others as appropriate to language eg form design, flowcharts, pseudo code, structured English, action charts, data dictionary, class and instance diagrams

3. Be able to implement Java solutions

  • Classes: features eg identification attributes, methods, control of scope of attributes and methods, inheritance, aggregation, association, polymorphism
  • Programming: use of conventional language commands; use of library classes; pre-defined eg class libraries, downloaded, imported
  • Complexity: multiple classes; inheritance; reuse of objects; application of polymorphism

4. Be able to test and document Java solutions

  • Mechanisms: methods eg valid declarations, debugging code, checking naming conventions, checking functionality against requirements, error detection, error messages, compiler errors, runtime errors, in code response, dry running
  • Feedback: record feedback, eg surveys, questionnaire, interviews; analyze feedback; present results
  • Supportive documentation: test plan; test results; programmer guidance; user guidance
  • Review: design against specification requirements, interim reviews


  • Bloch J – Effective Java, Second Edition (Prentice Hall, 2008) ISBN: 0321356683
  • Goetz B – Java Concurrency in Practice (Addison Wesley, 2006) ISBN: 0321349601
  • Niemeyer P – Learning Java, Third Edition (O’Reilly, 2005) ISBN: 0596008732

Our Features
Recent Reviews

Thank you so much

Aliza Smith

I was running short of time in writing assignment as I ha...

Kurt Low

Good Work, answer of the task is awesome. There are no si...

Related Subjects
Related Assignments
Related Solutions

Happy Students Testimonials