Introduction to Programming in Java AP Computer Science A Dr. Persin www.Lnk2Lrn.com
Contents History First Java Application Data types Variables Strings Assignments Math, Boolean expressions Relational operations If statements System.exit www.Lnk2Lrn.com
Very Brief History Started in 1991 by SUN Microsystems Targeted at consumer electronics. Wanted reliable programming language. Integrated into browsers Evolved into write once run anywhere, integrates into Netscape General purpose libraries released www.Lnk2Lrn.com
Basic Definitions Java is an object oriented language. Object Method Class Applications Applets Native classes Threads Exceptions www.Lnk2Lrn.com
First Application /** *Hello World, first application, only output. */ public class hello{ public static void main (String [] args) { System.out.println(“Hello World”); } //end main }//end class www.Lnk2Lrn.com
Notice: Java is CASE SENSITIVE!! Whitespace is ignored by compiler Whitespace makes things easier to read…hence it affects your grade File name has to be the same as class name in file. Need to import necessary class definitions www.Lnk2Lrn.com
Variables Variables: Naming: Name Type Value May contain numbers,underscore,dollar sign, or letters Can not start with number Can be any length Reserved keywords Case sensitive www.Lnk2Lrn.com
Primitive data types Byte 8 -27 27-1 Short 16 -215 215-1 Int 32 -231 231-1 Long 64 Float Double Boolean 1 Char www.Lnk2Lrn.com
Assignment = Example: int n; n = 10; or int n = 10; //same www.Lnk2Lrn.com
Strings Not a primitive class, its actually something called a wrapper class To find a built in class’s method use API documentation. String is a group of char’s A character has single quotes char c = ‘h’; A String has double quotes String s = “Hello World”; Method length int n = s.length; www.Lnk2Lrn.com
Using Strings public class hello{ public static void main (String [] args) { String s = “Hello World”; System.out.println(s); //output simple string } //end main }//end class hello www.Lnk2Lrn.com
Math Unary Regular math (+,-,*,/) % modulo operator int x = -9; int y = 3+x; % modulo operator www.Lnk2Lrn.com
Incrementing Increment and Decrement i++ equivalent to i = i + 1; Can also do ++i, which uses i before incrementing it. Decrementing: i--; www.Lnk2Lrn.com
Casting int n = 40; Wrong : byte b = n; why?? Right: byte b = (byte) n; Type casting converts to target type www.Lnk2Lrn.com
Casting II Type char is stored as a number. The ASCII value of the character. A declaration of : char c = ‘B’; stores the value 66 in location c can use its value by casting to int how?? www.Lnk2Lrn.com
Assignment += -= *= /= %= www.Lnk2Lrn.com
Boolean Expressions boolean b b will be either true (1) or false (0) Logical operations: !(not), && (and) || (or) boolean a,b; a = true; b = false; System.out.println (“a && b is “ + (a && b)); www.Lnk2Lrn.com
Relational Operators == equality != inequality > greater than < less than >= greater than or equal to <= less than or equal to www.Lnk2Lrn.com
The if - branching statement if ( x < y) { x = y; } if ( x < y ) { x = y; } else { x = 88; } www.Lnk2Lrn.com
If/Else if (logic condition) { something } else if (logic condition) { something } else { something else } www.Lnk2Lrn.com
Nested IF if ( x < 0 ) { System.out.println( “ x is negative “ ); } else { if ( x > 0 ) { System.out.println ( “x is positive” ); } //end if x > 0 else { System.out.println ( “x is zero “ ); } } //end else x >=0 www.Lnk2Lrn.com
Switch/Case Switch(variable){ case(1): something; break; default: something; } www.Lnk2Lrn.com
Exceptions Java exception object. java.io.Exception most general one. Some exception like in Throwable class define methods to get the message. www.Lnk2Lrn.com
try….catch blocks. Try { ……. } catch ( IOException v) { ………. } www.Lnk2Lrn.com
System.out.println println is a method in the Printstream class. Defined: public void println(String x) can be any type of string or combination string using addition to join parts. Example: println(“hello “ + “world “ + x); www.Lnk2Lrn.com
System.exit() One method in java.lang.System Defined: public static void exit ( int status) Terminates currently running Java VM Status is status code, non zero will usually mean something abnormal. Used at end to indicate success, or in middle to signal problems. For more practice go to http://www.javabat.com www.Lnk2Lrn.com