Object Orientated Programming - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

Object Orientated Programming

Description:

Object Orientated Programming An Introduction to Java For the most accurate and up-to-date tutorials, please access the latest version from Sun's official website for ... – PowerPoint PPT presentation

Number of Views:77
Avg rating:3.0/5.0
Slides: 30
Provided by: jba102
Category:

less

Transcript and Presenter's Notes

Title: Object Orientated Programming


1
Object Orientated Programming
An Introduction to Java
2
  • For the most accurate and up-to-date tutorials,
    please access the latest version from Sun's
    official website for the Java SE Tutorials (Last
    Updated 9/23/2009), which can be found at
    http//java.sun.com/docs/books/tutorial.

3
Features of OOP
  • Classes
  • Objects
  • Instantiation
  • Inheritance
  • Membership Functions

4
More OOP Features
  • Data Encapsulation
  • Polymorphism
  • Operator Overloading
  • Message Passing
  • Software Re-Use

5
History of Java
  • Java
  • Java, first released by Sun Microsystems in 1994
  • Originally for intelligent consumer-electronic
    devices
  • Then used for creating Web pages with dynamic
    content
  • Now also used for
  • Develop large-scale enterprise applications
  • Enhance WWW server functionality
  • Provide applications for consumer devices (cell
    phones, etc.)

6
The Emergence of Java
  • In the past decade Java has emerged in wide use
    partially because of its similarity to C and to
    C
  • Perhaps more important is its implementation
    using a virtual machine that is intended to run
    code unchanged on many different platforms.
  • This last feature has made it very attractive to
    larger development shops with heterogeneous
    environments.

7
Key Benefits of Java
  • Java is write once, run anywhere
  • architecture neutral
  • portable across different platforms
  • Due to Java Virtual Machine (JVM)
  • Security features
  • highly configurable security levels prevent any
    piece of Java code doing harm to the host system
  • Network-centric platform
  • easy to work with resources across a network and
    to create network based applications
  • Object Oriented
  • an interacting collection of independent software
    components
  • dynamic extensible programs

8
Key Benefits of Java
  • Internationalisation
  • uses 16 bit Unicode characters that represents
    the phonetic and ideographic character sets of
    the entire world
  • Performance
  • although an interpreted language Java programs
    run almost as fast as native C, C programs
  • Simple and easy to develop
  • powerful well designed set of APIs

9
Java Class Libraries
  • Classes
  • Include methods that perform tasks
  • Return information after task completion
  • Used to build Java programs
  • Java contains class libraries
  • Known as Java APIs (Application Programming
    Interfaces)

10
Basics of a Typical Java Environment
  • Java programs normally undergo five phases
  • Edit
  • Programmer writes program (and stores program on
    disk)
  • Compile
  • Compiler creates bytecodes from program
  • Load
  • Class loader stores bytecodes in memory
  • Verify
  • Verifier ensures bytecodes do not violate
    security requirements
  • Execute
  • Interpreter translates bytecodes into machine
    language

11
Typical Java environment.
12
Java
  • In discussing java it is important to distinguish
    between
  • The Java Programming Language
  • The Java Virtual Machine
  • The Java Platform

13
Java
  • The Java Programming Language is the language in
    which Java applications, applets , servlets and
    components are written. It is an object
    orientated language like C.
  • The Java Virtual Machine, (or java interpreter)
    is the crucial piece of every Java installation.
    Java applications are portable, but they are only
    portable to platforms to which a java virtual
    machine ( or java interpreter ) has been ported.
  • 3. The Java Platform . All programs written in
    Java rely on the set of predefined classes that
    comprise the java platform. These classes are
    organised into related groups known as packages.
    The java platform defines packages for
    functionality such as input/output, networking,
    graphics, user interface creation.

14
JVM
Compiled by Java compiler
Source Code
Application runs
15
JVM
  • JVM provides the run time environment for the
    bytecode (Java Runtime Environment JRE)
  • executes the bytecode and causes native machine
    code instructions to execute on the CPU that the
    JVM is on
  • ? each target platform needs an implementation of
    the JVM

16
Java Compiler
Errors
Byte Code
Compiler
Source Code
Interpreter for Computer A (JVM)
Interpreter for Computer B (JVM)
Interpreter for Computer C (JVM)
17
Operation of the JRE (Java Runtime Environment)
Runtime
Compile
Class Loader
java
Bytecode verifier
Load from hard disk, network or other source
Interpreter
javac
RunTime
Hardware
18
JRE
  • At runtime the java bytecode that makes up a java
    software program are
  • Loaded, checked and run in an interpreter
  • In the case of applets you can download the
    bytecode and they are then interpreted by the JVM
    built into the browser.
  • Bytecode verifier checks
  • Attributes correctly typed
  • Body of the methods check
  • Type checking
  • References to other types checked

19
Java Applications vs Java Applets
  • There are two categories of Java Programs
  • A Java Application
  • These are stand alone programs in the traditional
    sense
  • Run independently
  • Run under the java interpreter
  • Java applets
  • These are programs designed to run from browsers
    such as Netscape or Suns HotJava.
  • They dont run independently
  • Programs that can be included in web documents.

20
First Java Program (Application)
// First Program HelloWorld public class
HelloWorld public static void main(String args
) System.out.println(Hello
world...)
  • A class definition is the basic block of a Java
    program
  • Each program must have a main method to tell it
    where to start executing

21
Notes
  • // First Program HelloWorld
  • Comments begin with //
  • Can also use C style comments
  • / First Program HelloWorld /

22
Notes 2
  • public class HelloWorld
  • This begins a class definition for class
    HelloWorld
  • These classes are known as Programmer defined
    classes or User defined classes
  • The public and class terms are java keywords
    which are always lowercase
  • HelloWorld is the class identifier which always
    start with an uppercase letter

23
Notes 3
  • When you save your class definition in a file the
    filename must be the same as the class identifier
    with a .java extension
  • So the HelloWorld class would be stored in a
    HelloWorld.java file

24
Notes 4
  • public static void main(String args )
  • Java applications automatically begin executing
    at main
  • Parentheses () after main indicate a program
    piece called a method which define some
    operational component of the class.
  • Void indicates that the method will perform a
    task without returning any information when it
    completes
  • String args are used as input arguments to the
    method. In this case we dont use input but java
    requires it anyway

25
Notes 5
  • System.out.println(Hello world...)
  • System.out is called the standard output object
  • This will display a line of text in the command
    window
  • In Java , any source and destination for I/O is
    considered a stream of bytes or characters.
  • To perform output we insert bytes or characters
    into a stream. To perform input we extract bytes
    or characters from a stream.
  • java.lang.System class contains three predefined
    streams
  • System.out
  • System.err for errors
  • System.in

26
A First Java Program
  • This is a Java application not a Java applet
    indicated by presence of main
  • Source code exists in a file with same name as
    the class and an extension of .java. So for the
    previous example it is HelloWorld.java
  • Java is case sensitive (like C.)

27
Using the JDK
  • Create source files for each class in your
    program
  • The name of source file should be the same as the
    name of class

public class myCode

myCode.java
Source File
28
Compiling your source code
  • Compile each class source file into bytecode
    (class files)
  • To compile a java source file
  • javac myCode.java
  • This creates a classfile called myCode.class

1001101001110101011
myCode.class
Class File
29
To run your program
  • To start your program running you run the
    bytecode of the program control class
  • The program control class has the main method
  • To run bytecode pass it to the JVM
  • java classFileName
  • e.g. java myProg
  • note no .class included
Write a Comment
User Comments (0)
About PowerShow.com