Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Java Programming. Contents 1. Java, etc. 2. Java's Advantages 3. Java's Disadvantages 4. Types of Java Code 5. Java Bytecodes 6. Steps.

Similar presentations


Presentation on theme: "Introduction to Java Programming. Contents 1. Java, etc. 2. Java's Advantages 3. Java's Disadvantages 4. Types of Java Code 5. Java Bytecodes 6. Steps."— Presentation transcript:

1 Introduction to Java Programming

2 Contents 1. Java, etc. 2. Java's Advantages 3. Java's Disadvantages 4. Types of Java Code 5. Java Bytecodes 6. Steps in Writing a Java Application 7. Steps in Writing a Java Applet

3 1. Java, J2SE, JSDK, JDK, JRE There are several 'Java' names:  Java is the name of the language Java 2 is the current version  the language + tools (e.g. compiler) is called J2SE, the Java 2 Standard Edition J2SE 1.6.0. is the current version its also known as J2SE 6.0 continued the same thing

4 JSDK  stands for "Java Software Development Kit  JDK is the old name for JSDK  don't be surprised to also see J2SDK or Java SDK continued

5 JSDK contains all the libraries (packages), compiler, and other tools for writing/running/debugging Java code. JRE = "Java Runtime Environment"  a cut-down version of JSDK with only the packages/tools needed for running Java code  most often used by Web browsers

6 More New Names Sun is trying to get people to drop the "2" from the Java platform names.  e.g. J2SE becomes Java Standard Edition, abbreviated as "Java SE"  not really popular, yet

7 2. Java’s Advantages Productivity  object orientation  many standard libraries (packages) Simpler/safer than C, C++  no pointer arithmetic, has automatic garbage collection, has array bounds checking, etc. continued

8 GUI features  mostly located in the Swing and Abstract Windowing Toolkit (AWT) packages Multimedia  2D and 3D graphics, imaging, animations, audio, video, etc. continued

9 Network support  communication with other machines/apps  variety and standards: sockets, RMI, CORBA  security, resource protection Multithreading / concurrency  can run several ‘threads’ at once continued

10 Portablility / Platform Independence  “write once; run anywhere”  only one set of libraries to learn J2SE is free continued

11 Good programming environments:  Eclipse, Blue J, JBuilder, NetBeans, Sun One Studio  do not use them when first learning Java  http://java.coe.psu.ac.th/Tool.html Applets (and Java Web Start) eliminates the need for explicit software installation. continued

12 3. Java’s Disadvantages Java/J2SE is still being developed  many changes between versions Sun has not guaranteed backward compatibility of future versions of Java.  at the moment, when old-style code is compiled, the compiler gives a “deprecation” warning, but will still accept it continued

13 Java compilation/execution was slow, but...  not any more: J2SE 1.5 is the same speed as C (perhaps a tiny bit slower for some things)  there are compilers to native code, but they destroy the “write one; run anywhere” idea  the first version of Java, back in 1995, was about 40 times slower than C continued

14 Slow Internet connections  makes it difficult (and irritating) to download medium/large size applets  e.g. GIF89a/flash files have replaced Java animations Lots to learn  Java language (small) and Java libraries (very, very large) continued

15 4. Types of Java Code There are two kinds of Java code: 1. Java applications  ordinary programs; stand-alone  they don’t run inside a browser (but they can use Java’s GUI libraries) continued We will see examples in the next part.

16 2. Java applets  they run in a Web browser  they are attached to Web pages, so can be downloaded easily from anywhere  applets have access to browser features

17 5. Java Bytecodes The Java compiler ( javac ) generates bytecodes  a set of instructions similar to machine code  not specific to any machine architecture A class file (holding bytecodes) can be run on any machine which has a Java runtime environment.

18 The Bytecode Advantage Java code (.java file) javac (Windows) javac (Mac) javac (Linux) Java bytecode (.class file) Java runtime (Windows) Java runtime (Mac) Java runtime (Linux)

19 6. Steps in Writing a Java Application Foo.java text file holding the application javac Foo.java call the Java compiler Foo.class class file holding Java bytecodes java Foo execute the class using the Java runtime system (the JVM)

20 Hello.java import java.io.*; public class Hello { public static void main(String args[]) { System.out.println(“Hello Andrew”); } } // end of class

21 Compile & Run

22 7. Steps in Writing a Java Applet AFoo.java text file holding the applet javac AFoo.java call the Java compiler AFoo.class class file holding Java bytecodes appletviewer AFoo.html AFoo.html Web page that calls AFoo.class execute the applet using the Java runtime system (the JVM)

23 AFoo.classAFoo.html Web page that calls AFoo.class browser downloads Web page and Java class Using a browser For Java 2, the Java Plug-in is required, or use the Opera browser

24 WelcomeApplet.java import javax.swing.JApplet; import java.awt.Graphics; public class WelcomeApplet extends JApplet { public void paint(Graphics g) { g.drawString(“Welcome Andrew”, 25,25); } }

25 WelcomeApplet.html Applet Testing

26 Compile & Run $ javac WelcomeApplet.java $ appletviewer WelcomeApplet.html

27 Browser Execution Microsoft IE and Netscape do not directly support Java 2. A common solution is to use the Java plugin, available from Sun  a drawback is that it requires the Web page containing the applet to contain more complicated tags (and JavaScript code) so that the applet can run inside Netscape and Microsoft IE continued

28 A better solution is to use the Opera browser:  free from http://www.opera.com  it comes with JRE 1.5, the latest version of the Java Runtime Environment, or it can be linked to the JRE already on your machine  there is no need for a Java plugin  Opera is very fast, small-size, and supports many networking standards continued

29 Load WelcomeApplet.html


Download ppt "Introduction to Java Programming. Contents 1. Java, etc. 2. Java's Advantages 3. Java's Disadvantages 4. Types of Java Code 5. Java Bytecodes 6. Steps."

Similar presentations


Ads by Google