* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download unit 1
Survey
Document related concepts
Structured programming wikipedia , lookup
Class (computer programming) wikipedia , lookup
Program optimization wikipedia , lookup
Go (programming language) wikipedia , lookup
Library (computing) wikipedia , lookup
Object-oriented programming wikipedia , lookup
Reserved word wikipedia , lookup
Java syntax wikipedia , lookup
Comment (computer programming) wikipedia , lookup
Scala (programming language) wikipedia , lookup
C Sharp syntax wikipedia , lookup
Interpreter (computing) wikipedia , lookup
Name mangling wikipedia , lookup
Java (programming language) wikipedia , lookup
Transcript
Outline Java program structure Basic program elements Preparing and executing a program Suggested reading: • Chapter 2 in Java software solutions / Lewis & Loftus syllabus basic programming concepts object oriented programming topics in computer science 1 unit 1 Java Program Structure In the Java programming language: • A program is made up of one or more classes • A class contains one or more methods • A method contains program statements These terms will be explored in detail throughout the course A Java application always contains a method called main 2 unit 1 Java Program Structure // comments about the class public class MyProgram { class header class body Comments can be added almost anywhere } 3 unit 1 Java Program Structure // comments about the class public class MyProgram { // comments about the method public static void main (String[] args) { method body method header } } 4 unit 1 Example: a Basic Java Program // Prints a quote from Abraham Lincoln class Lincoln { // method main public static void main(String[] args) { System.out.println(“Whatever you are, be a good one”); } } 5 unit 1 Basic program elements: identifiers Identifiers are the words the programmer uses to give names to program constructs (classes, methods, variables,...) Naming rules: • An identifier can be made up of letters, digits, the underscore character ‘_’, and the dollar sign ‘$’ • An identifier must begin with a letter, ‘_’ or ‘$’ • Java is case sensitive, therefore Total and total are different identifiers 6 unit 1 Naming style Names should be chosen carefully - they play a central role in the readability of the program and is part of its documentation; they should be: • meaningful BankAccount, size vs. XP12_r$, wq1 • long enough to express the meaning of the name - numberOfElements • But not unnecessarily long theCurrentItemBeingProcessed 7 unit 1 Identifiers Sometimes we choose identifiers ourselves when writing a program (such as Lincoln) Sometimes we are using another programmer's code, so we use the identifiers that they chose (such as println) Often we use special identifiers called reserved words that already have a predefined meaning in the language; a reserved word cannot be used in any other way 8 unit 1 Reserved Words Reserved words - have predefined meaning in the language and cannot serve as identifiers abstract boolean break byte byvalue case cast catch char class const continue default do double else extends false final finally float for future generic goto if implements import inner instanceof int interface long native new null operator outer package private protected public rest return short static super switch synchronized this throw throws transient true try var void volatile while 9 unit 1 Literals A literal is an explicit data value used in a program Integer literals: 25 69 Floating point literals: 3.14159 -4288 42.075 -0.5 Boolean literals: true false String literals: "The result is: " ”The quick brown fox jumped over the lazy dogs” 10 unit 1 White Spaces Spaces, blank lines, and tabs are collectively called white space and are used to separate words and symbols in a program Extra white space is ignored A valid Java program can be formatted many different ways Programs should be formatted to enhance readability, using consistent indentation 11 unit 1 Bad Indentation Example // Prints a quote from Abraham Lincoln class Lincoln { public static void main(String[] args) { System.out. println(“Whatever you are …” ); } } 12 unit 1 Comments Explain the code in human language Are ignored by the translation process Comments should be short and descriptive Two forms of Java comments: // comment runs to the end of the line /* comment run to terminating symbol, even across line breaks */ 13 unit 1 Java Translation and Execution The Java compiler translates Java source code into a special representation called bytecode Java bytecode can be thought of the machine code for a fictions machine called the Java Virtual Machine The Java interpreter translates the bytecode into machine language code and executes it The use of bytecode makes Java platform independent 14 unit 1 Java Translation and Execution Java code (Lincoln.java) javac Lincoln.java Java compiler bytecode (Lincoln.class) java Lincoln Java interpreter 15 unit 1 Translation and Execution Compiling from the command line: > javac Lincoln.java This creates a file called Lincoln.class, which contains the bytecode for class Lincoln Running the class using the interpreter: > java Lincoln Other environments do this processing in a different way 16 unit 1 Translation and Execution 17 unit 1 Java Translation and Execution Java source code Java compiler Java bytecode Java interpreter Bytecode compiler Machine code 18 unit 1 Development Environments There are many development environments which develop Java software: • • • • • Sun Java Software Development Kit (SDK) Borland JBuilder MetroWork CodeWarrior Microsoft Visual J++ Symantec Café Though the details of these environments differ, the basic compilation and execution process is essentially the same 19 unit 1 Syntax and Semantics The syntax rules of a language define how we can put symbols, reserved words, and identifiers together to make a valid program The semantics of a program statement define what that statement means (its purpose or role in a program) A program that is syntactically correct is not necessarily logically (semantically) correct A program will always do what we tell it to do, not what we meant to tell it to do 20 unit 1 Errors A program can have three types of errors: 1. The compiler finds problems with syntax and other basic issues (compile-time errors) If compile-time errors exist, an executable version of the program is not created 2. A problem can occur during program execution (example: divide by zero). This can causes a program to terminate abnormally (run-time errors) 3. A program may run, but produce incorrect results (logical errors) 21 unit 1 Syntax error // This program contains a syntax error class lincoln { public static void main (String[] args) { System.out.println("Whatever you are…"); } 22 unit 1 What you should be able to do... write a very simple java program that can print a sentence run it on a computer: compile with “javac”, interpret with “java” understand error messages given by the computer 23 unit 1