Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
CSc 201 Introduction to Java George Wells Room 007, Hamilton Building Email: [email protected] Notice from Dean of Science • Thank you to students for the way you prepared for curriculum approval – went very smoothly for the science faculty • HOWEVER, some science students have not yet registered their subjects – These students MUST complete their curriculum approval in the Dean’s office TODAY Notice (cont.) • Any changes to your curriculum can only be done after discussion with the Dean – cannot change on ROSS or at Eden Grove • If the Dean detects a problem with your curriculum, he will email you to see him – It is essential that you respond to that email as quickly as possible so we can correct the error Introduction to Java Chapter 1: Getting Started • What is Java? – Recent programming language (1995) – Based on C++ – Great for teaching (and learning!) History 101 • 1991: The Green Project – Intelligent “set-top boxes” – Oak • 1993: The Internet/World Wide Web • 23 May 1995: Java 1.0 – Sun and Netscape History (cont.) • Quick fixes! – Java 1.1 – Development of libraries and language – 1.1.7 • Stability at last! – Java 1.2 (November 1998) – Integrated the library development – Marketed as Java 2! History (cont.) • Performance at last: Java 1.3 (May 2000) – Not Java 3! • Oracle buys Sun Microsystems (2010) • Current version – Java 1.6 (also called Java 6!) – Standard Edition (SE) – also Micro and Enterprise Editions (ME and EE) Our First Java Program /* Comment 1: Written by George Wells -- 6 January 2011 */ public class HelloWorld { public static void main (String[] args) { System.out.println("Hello, world\n"); // Comment 2 } // main } // class HelloWorld Python Equivalent! print "Hello, world\n" Basics • Case sensitivity: – String is not the same as string – MAIN is not the same as main • Java keywords are all lower case – e.g. public class static void Looking at the program: The main method /* Comment 1: The program’s Written by George Wells entry -- 6 point January 2011 */ public class HelloWorld { public static void main (String[] args) { System.out.println("Hello, world\n"); // Comment 2 } // main } // class HelloWorld Looking at the program: Statements /* Comment 1: Written by George Wells -- 6 January 2011 */ public class HelloWorld { public static void main (String[] args) { System.out.println("Hello, world\n"); // Comment 2 } // main } // class HelloWorld A single statement Statements • Terminated by semicolons: System.out.println("Hello, world\n"); • Free format – Examples: a = b + c + d; One statement Four statements Use one statement per line! a = 1; b = 2; c = a * b + 3; d = 4; Looking at the program: Grouping parts of the program /* Comment 1: Written by George Wells -- 6 January 2011 */ public class HelloWorld { public static void main (String[] args) { System.out.println("Hello, world\n"); Braces // Comment 2 } // main } // class HelloWorld A Compound Statement Looking at the program: Comments /* Comment 1: Written by George Wells -- 6 January 2011 */ public class HelloWorld { public static void main (String[] args) { System.out.println("Hello, world\n"); // Comment 2 } // main } // class HelloWorld Looking at the program: Strings and Escape Sequences /* Comment 1: Written by George Wells -- 6 January 2011 */ public class HelloWorld { public static void main (String[] args) { System.out.println("Hello, world\n"); // Comment 2 } // main } // class HelloWorld Escape Sequence Input and Output • Output: – System.out is an output stream (connected to the screen by default) – println is a method to display information • Input: – System.in is an input stream (connected to the keyboard by default) – More complicated! (wait until Chapter 10) Compiling and Running Java Programs • A little different! • DOS command-line tools Case is significant! • Compiler: javac Compiling (cont.) • The compiler produces a .class file – Bytecode (not machine code) – Allows portability (Java programs can run on almost any hardware and operating system) • Needs an interpreter – The Java Virtual Machine (JVM) – A program that “executes” bytecode Compiling HelloWorld.java public class HelloWorld { ... javac HelloWorld.java File of bytecodes HelloWorld.class Running HelloWorld.class Run the interpreter java HelloWorld Or use an IDE • JCreator