AHS-TechClub-050713 - Avon High School Tech Crew

Download Report

Transcript AHS-TechClub-050713 - Avon High School Tech Crew

V2012.13

Agenda

• Old Business – Delete Files • New Business – Week 19 Topics: • Intro to HTML/CSS: Questions?

• Group Executive Committee • Website Help • Introduction to Python Review • Intro to Java Avon High School Tech Club 2

HTML/CSS Class

QUESTIONS?

Avon High School Tech Club 3

Tech Club Executive Committee

• Next Year: – Election of Officers • President • Vice President • Secretary • Treasurer • Send me an email with interest Avon High School Tech Club 4

Website Help

• Two Projects – – Non-Profit Realtor • Contact me if you are interested Avon High School Tech Club 5

Upcoming Schedule

• Today:

Intro to Java

• May 14 th :

Intro to C#

(Guest Speaker) • May 21 st :

Embedded Programming

• May 28 th : TBD Avon High School Tech Club 6

Python review

Avon High School Tech Club 7

Avon High School Tech Club

INTRO TO JAVA

8

Intro to Java

• History • Brief Overview • Installation/Tools • Getting Started • Examples • Resources Avon High School Tech Club 9

Java Overview

• Over 17 years old • Used in mobile, desktop and enterprise apps • Emphasizes code portability • Statically typed • Runs on multiple platforms (via JVM) • Did you know Android is Java-based?

Avon High School Tech Club 10

More on Java

• Object-Oriented programming language – How we think about the world (nouns and verbs) • Java is the 1st or 2nd most popular, depending on who you ask and when Avon High School Tech Club 11

Java Variables

• Variable Naming Conventions: – – – Variable names must start with a lowercase letter Variable names can’t have spaces in them – Variable names can have numbers in them, but they can’t start with them Variables can’t have any symbols in them except for an underscore ( the _ character) • Achieved in Java using

Types

Avon High School Tech Club 12

Java Types … called Primitives Java Type byte short int long float double boolean String char Example

byte b = 100; short s = 10000; int n = 5; long ssNum = 999_99_9999L; float f = (float) 4.5; double x = 123.4; boolean b = false; String s = “Hello"; char c = ‘t'; Avon High School Tech Club Integer Integer Integer Integer Decimal Decimal true or false Words Letter 13

Comparing Java to Python Python Java

Avon High School Tech Club 14

Java Conditionals if(this is true){

do this

} else{

do this instead

}

Avon High School Tech Club 15

Java Conditionals if(x > 10){ System.out.println(“x is big!”); } else{ System.out.println(“x is small!”); }

/*

System.out.println

() just tells Java to print what’s in the quotes

. */

Avon High School Tech Club 16

Java Loops

/* Keep doing this until it isn’t true anymore */

while(this is true){

do domething

}

/* Or repeat something an exact number of times */

for(counter = 0; counter < 10; counter = counter + 1){

do this every time

}

Avon High School Tech Club 17

Java Loops

/* Find the average of 10 of numbers */

int counter; float sum = 0; for(counter = 0; counter < 10; counter = counter + 1){ sum = sum + nextNumber; } float average = sum / 10;

For now, we’ll pretend that nextNumber comes from somewhere

Avon High School Tech Club 18

Java Functions/Methods

• There are many situations where you will write code that you want to use again, executing the same instructions but on a different set of data.

• This is why we use

functions/methods

• In the System.out.println() example, the String in quotes is the argument. The job of System.out.println() is to print its argument to the screen • Arguments can be variables or constants, it depends on the method Avon High School Tech Club 19

Java Functions/Methods

• Functions/Methods: – – Reusable, named chunks of code You’ve seen a Method already: •

System.out.println()

• Methods can take in

arguments

, represents data that the method will manipulate Avon High School Tech Club 20

Java Functions/Methods Example

/* First we must define a method */

int

addTwoIntegers

( int a, int b ){ int sum = a + b; return sum; Method Name } Arguments Return Type Method Body Return Value Avon High School Tech Club 21

Java Functions/Methods Example

/* First we must define a method */

int addTwoIntegers(int a, int b){ return a + b; }

/* Then we use the method */

addTwoIntegers(10,15); /* 25! */

/* We can treat a method like it is a variable of its return type */

int x = addTwoIntegers(10, 15); /* x is 25 */

Avon High School Tech Club 22

Java Programming Tips

• Increment and Decrement an integer (add or subtract 1) – Instead of

x = x + 1

use

x++

decrement) or

++x

(use

--

for – – – All of the arithmetic operators can be “combined” with an equal sign Instead of

x = x + 12

we can use

x += 12

Also

-=, *=, /=

– The - sign is used for subtraction as well as negative numbers Avon High School Tech Club 23

Java Programming Tips

• Equals like assignment vs. equals like comparison – We use

=

to assign a value to a variable, so how do – we ask if something

is equal to

something else?

==

means “

is equal to

” • When you’re “reading” code, you should read “

=

” as “

becomes

” and “

==

” as “

is equal to

” Avon High School Tech Club 24

Quiz Time!

System.out.println()

is an example of a reusable chunk of code called a ________

method

Avon High School Tech Club 25

Quiz Time!

If we need our code to behave differently depending on some condition, we use the word _____

if

Avon High School Tech Club 26

Quiz Time!

If we need to repeat an action over and over again but we aren’t sure how many times, we use a _____ loop

while

Avon High School Tech Club 27

Quiz Time!

If we need to repeat an action over and over again and we know how many times, we use a _____ loop

for

Avon High School Tech Club 28

Quiz Time!

True or False

: If we want to make a decision based on whether or not a variable is equal to something, we use “ = ”

False We use “==“

Avon High School Tech Club 29

Quiz Time!

What is wrong with this statement:

int x = 2.5; x is an integer but 2.5 is a float/double

Avon High School Tech Club 30

Quiz Time!

int, double

, and

float

are examples of _____

Types

Avon High School Tech Club 31

Quiz Time!

What does this block of code do:

int i = 0; while(i < 10) { } System.out.println(i); i = i + 1;

a.) Print “i” 10 times b.) Prints the numbers 1 - 10 c.) Prints the numbers 0 - 10 d.) Prints the numbers 0 - 9 Avon High School Tech Club 32

Avon High School Tech Club

GETTING STARTED

33

Getting Started with Java

• Download Java Development Kit (JDK) – – http://tinyurl.com/355cx3m http://www.oracle.com/technetwork/java/javase/downl oads/jdk7-downloads-1880260.html

• Download JDK + NetBeans – http://tinyurl.com/76mgogl • Java/NetBeans Quick Start – https://netbeans.org/kb/docs/java/quickstart.html

• Tip: Configure PATH Avon High School Tech Club 34

Steps to Creating a Java Application Source Code (.java) Compiler (javac) Bytecode (.class) Execute (java)

Avon High School Tech Club 35

Step 1: Source Code class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); } }

Avon High School Tech Club 36

Step 1: Source Code

• Every application begins with a class definition

class HelloWorldApp {

public static void main(String[] args) { System.out.println("Hello World!"); }

}

Avon High School Tech Club 37

Step 1: Source Code

• In the Java programming language, every application must contain a

main

method, where app starts to execute: class HelloWorldApp {

public static void main(String[] args)

{ System.out.println("Hello World!"); } } • The

public

keyword is called an

access modifier

, meaning it can be accessed by code outside the class Avon High School Tech Club 38

Step 1: Source Code

• In the Java programming language, every application must contain a

main

method, where app starts to execute: class HelloWorldApp {

public static void main(String[] args)

{ System.out.println("Hello World!"); } } • The

static

keyword means

main

can be called before an object of the class has been created.

Avon High School Tech Club 39

Step 1: Source Code

• In the Java programming language, every application must contain a

main

method, where app starts to execute: class HelloWorldApp {

public static void main(String[] args)

{ System.out.println("Hello World!"); } } • The

void

a value.

keyword tells the compiler

main

does not return Avon High School Tech Club 40

Step 1: Source Code

• In the Java programming language, every application must contain a

main

method, where app starts to execute: class HelloWorldApp {

public static void main( String[] args)

System.out.println("Hello World!"); } } { • The

String

declares a parameter named

args String

(array) of type Avon High School Tech Club 41

Step 1: Source Code

• The last line uses the

System

class from the core library to print the "Hello World!" message to standard output.

class HelloWorldApp { public static void main(String[] args) {

System.out.println("Hello World!");

} } Avon High School Tech Club 42

Step 1: Source Code

• The last line uses the

System

class from the core library to print the "Hello World!" message to standard output.

class HelloWorldApp { public static void main(String[] args) {

System.out.println("Hello World!");

} } Avon High School Tech Club 43

Step 2: Compile Your Code javac HelloWorld.java

• Provided there are no compilation errors, you should now have a

.class

file:

HelloWorld.class

Avon High School Tech Club 44

Step 3: Execute Your Application java HelloWorld Hello World!

Holla! You just created your first Java App!

Avon High School Tech Club 45

Creating Rich Clients

• Swing • JavaFX/Scene Builder Avon High School Tech Club 46

Resources

• Java Tutorial – http://docs.oracle.com/javase/tutorial/ • Learning – http://www.learnjavaonline.org/ Avon High School Tech Club 47

Your turn …

Avon High School Tech Club 48

Getting Started

1. Download the Java Development Kit (JDK 7)

(For Ubuntu: sudo apt-get install openjdk-7-jdk )

2. Open a text editor 3. Write a simple ‘Hello World’ program 4. Save it as “

HelloWorld.java

” 5. Compile it (

javac HelloWorld.java

) 6. Run your program (

java HelloWorld

) Avon High School Tech Club 49

PATH on Windows

Enter

javac

at command prompt, if you receive an error, install the JDK If JDK is installed, you may need to set the

PATH

At the command prompt:

set path=%path %;“C:\Program Files\Java\jdk1.7.0_21\bin"

Avon High School Tech Club 50

Write Your Own Java Program

Write a program that prints the name of your operating system and Java version.

Hint:

Search for system properties … Avon High School Tech Club 51

Challenge 1 public class SysInfo { public static void main(String[] args) { String nameOS = "os.name"; String javaVersion = "java.version"; System.out.println("\n General System Information"); } } System.out.println("\n OS Name: " + System.getProperty(nameOS)); System.out.println(" Java Version: " + System.getProperty(javaVersion));

Avon High School Tech Club 52

Advanced Challenge …

Write a program that prints the name of your

operating system

and

Java version

, then writes it to a file called

sys.info

Hint:

Search for setProperty and file I/O … Avon High School Tech Club 53

Challenge 2 import java.io.FileOutputStream; import java.io.IOException; import java.util.Properties; public class PropApp { public static void main( String[] args ) { String nameOS = "os.name"; String javaVersion = "java.version"; Properties prop = new Properties();

Avon High School Tech Club 54

Challenge 2 } } try { //set the properties value prop.setProperty("OperatingSystem", System.getProperty(nameOS)); prop.setProperty("JavaVersion", System.getProperty(javaVersion)); //save properties to project root folder prop.store(new FileOutputStream(“sys.info”), null); System.out.println("\n System info stored in sys.info”); } } catch (IOException ex) { ex.printStackTrace();

Avon High School Tech Club 55