Download appendix java. - DCU School of Computing

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Principles of Object-Oriented
Software Development
The language Java
The language Java
Introduction
Terminology
Expressions
Control
Objects
Inheritance
Techniques
Summary
Java -- the dial-tone of the Internet
1995
1996
1997
1998
Introduction at WWW3
1.0 with AWT
1.1.x with modified event handling
version 1.2 (beta) with Swing
Design principles -- safety
a modern programming language ,C++ syntax, no pointers
virtual machine (runs on many platforms)
libraries: threads, networking, AWT
downloadable classes, support for applets
extensions and APIs: Beans, Swing, MEDIA, 3D
See: http://www.javasoft.com and
http://java.sun.com/docs/books/tutorial
Keywords:
Java overview
• new, finalize, extends, implements, synchronized
Language features:
no pointers -- references only simplify life
garbage collection -- no programmers' intervention
constructors -- to create and initialize
single inheritance -- for refinement
interfaces -- abstract classes
synchronized -- to prevent concurrent invocation
private, protected, public -- for access protection
Type expressions
•
•
•
•
basic types -- int, char, float, ...
Array -- int ar[SIZE]
String -- String[] args
class -- user-defined
Expressions
•
•
•
•
•
operators -- + , - ,.., < , <= ,.., == , ! = ,.., && , ||
indexing -- o[ e ]
access -- o.m(...)
in/decrement -- o++, o-conditional -- b?e1:e2
Assignment
var = expression
modifying -- +=. -=, ...
Control
• conditional -- if (b) S1; else S2;
• selection -- switch(n) { case n1: S1; break;
... default: ... }
• iteration -- while (b) S
• looping -- for( int i = 1; i <= MAX; i++) S
• jumps -- return, break, continue
Java -- control
Hello World -- Java (1)
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
};
Hello World - interface
public interface World {
public void hello();
};
Hello World - class
public class HelloWorld implements World {
public void hello() {
System.out.println("Hello World");
}
};
Java -- objects (2)
Hello World -- Java (2)
import java.awt.Graphics;
public class HelloWorld extends
java.applet.Applet {
public void init() { resize(150,50); }
public void paint(Graphics g) {
g.drawString("Hello, World!", 50, 25);
}
};
Java -- inheritance
Java -- techniques
•
•
•
•
•
•
•
•
applets -- extend your browser
servlets -- extend your server
networking -- urls, sockets
RMI -- remote method invocation
reflection -- meta-information
beans -- component technology
JNI -- writing native methods
javadoc -- online class documentation
The language Java
•
•
•
•
•
•
design principles -- safety
terminology -- object, interface
syntax -- like C++
objects -- abstract data types, interfaces
inheritance -- single inheritance
techniques -- dynamic casts, reflection,
APIs
Related documents