Introduction to Java - San Francisco State University

Introduction to Java - San Francisco State University

Introduction to Java ISYS 350 A Brief History Sun Microsystems released this language in 1996 Versions: 1.0 1.6 Java Development Kit, JDK Standard Edition, SE and Enterprise Edition, EE With versions 1.2 through 1.5, SE and EE were known as Java 2 Platform, J2SE and J2EE. Latest version is called Java SE 6 and Java EE 6 Syntax is similar to C++ Both languages are case-sensitive Web-based applications

Portability Java: Write Once Run Anywhere Java Byte Code Java Source Code Java Virtual Machine (JVM) Java Byte Code (Intermediate Code) Executable Code How Java compiles and interprets code Java virtual machine (JVM) Text editor Java compiler

source code (*.java files) bytecodes (*.class files) Java interpreter Operating system Download Java SE Development Kit, SDK http://java.sun.com/javase/downloads/index.j sp JDK 6 Update 14 with JavaFX SDK Select or Create a folder for downloaded file: For example. C:\JavaDownload

Directories of the JDK Typical JDK directory: C:\Program Files\Java\jdk1.6.0_14 Sub Directories: bin: Java development tools including the Java compiler (javac) Jre: Java Runtime Environment needed to run compiled Java programs lib: Additional libraries used by the development tools Note: http://java.sun.com/javase/6/docs/technotes/tools/ windows/jdkfiles.html Testing Java Installation Demo: Use NotePad to create a Java program:

public class TestApp { public static void main(String[] args) { System.out.println("Java has been successfully installed. "); } } Save this program 1.The name of this program must mach the name of the public class. 2. It must have an extension java in lower case. 3. In the Save As box, enclose the name in quotation marks like this: TestApp.java Start the Command Prompt and Change Path

Start the command prompt: Start/Run/ Then, run this program: C:\WINDOWS\system32\cmd.exe Set the path to the bin folder in order to run java compiler: Right click MyComputer icon and choose Properties Select the Advanced tab and click on the Environment Variables button Use the Enviroment Variables dialog box to edit the variable named Path Type a semicolon and the path C:\Program Files\Java\jdk1.6.0_14\bin to the far right of the list of paths. From the Command prompt, change the directory to the programs folder:

C: > CD C:\Java\Examples Run a Java Program from Command Prompt Compile the program: javac TestApp.java If no syntax error, a class with the same name will be created in the same folder Run the program: java TestApp Common compile-time error message C:\java\examples\ch01\TestApp.java:1: class testapp is public, should be declared in a file named testapp.java public class testapp ^ What it means The *.java file name doesnt match the name of the public class. You

must save the file with the same name as the name thats coded after the words public class. In addition, you must add the java extension to the file name. Solution Edit the class name so it matches the file name (including capitalization), or change the file name so it matches the class name. Then, compile again. Slide 12 A common runtime error message Exception in thread "main" java.lang.NoSuchMethodError: main What it means The class doesnt contain a main method. Solution

Run a different class that does have a main method, or enter a main method for the current class. Slide 13 Integrated Development Environment, IDE An integrated development environment (IDE) also known as integrated design environment is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of:

a source code editor a compiler and/or an interpreter build automation tools a debugger Examples: NetBeans, Eclipse NetBeans IDE A free, open-source Integrated Development Environment for software developers. You get all the tools you need to create professional desktop, enterprise, web, and mobile applications. Support many languages: Java, PHP, C++, Ruby Support many platforms: Windows, Linux, Mac OS X and Solaris

Download NetBeans IDE Before you install the IDE, the Java SE Development Kit must be installed on your system. Website: http://www.netbeans.org/downloads/index.html Choose All that includes Java, PHP with bundled servers. NetBeans IDE 6.7.1 Installation Instructions http://www.netbeans.org/community/releases/67/ install.html NetBeans Tutorials From NetBeans home page: http://www.netbeans.org/ click Tutorials link

Quick Start Guide Using NetBeans to Create the TestApp Java Program 1. Start NetBeans 2. Click File/New Project and select Java 3. Name project and specify project folder 4. Copy and paste the TestApp programs statements to the generated Main method. 5. Click Run/Run Main project to test. Class and Method Class: When develop a Java application, you code one

or more classes for it. Access modifier: Control the scope of a class public: Other classes can access it. private: Used only in a project. Method: A class may contain one or more methods which are pieces of code that perform tasks. The main method: A special method that is automatically executed when the class that holds it is run. It is always declared to be public. The Syntax for Declaring a Class public!|or private class ClassName { statements } public class TestApp

{ public static void main(String[] args) { System.out.println("Java has been successfully installed. "); } } main Method Syntax public static void main(String[] args) public: Other classes can access it. static: Other classes can call this method directly without first creating an object. void: The method wont return any values. The code in the parenthesis lists the arguments that the method uses. Every main method has an argument named args which is defined as an array of strings.

Package and Project Package: Related classes are organized into package. A project may contain one or more packages. Java Language Tutorials http://java.sun.com/docs/books/tutorial/java/ TOC.html Questions and Exercises section at the end of each topic. Java Application Program Interface, API API is an interface that defines the ways by which an application program may request services from libraries. API, provides all the classes that are included as part of the JDK. You can view the API documentation from

the Java web site, or you can download and install it on your system. Java API page: http://java.sun.com/javase/7/docs/api/ Murachs Java SE 6, C1 2007, Mike Murach & Associates, Inc. Slide 24 Basic Coding Skills Statements: Direct the operation of the program. Can continue from one line to next line Spaces

Block of code: { } Indentation for easy reading Comments: Single-line comment: //comment Block comment: /* comment comment */ Naming an Identifier Valid identifiers InvoiceApp Invoice InvoiceApp2 subtotal discountPercent $orderTotal

_orderTotal input_string _get_total $_64_Valid i x TITLE MONTHS_PER_YEAR The rules for naming an identifier An identifier is any name that you create in a Java program. These can be the names of classes, methods, variables, and so on. Start each identifier with a letter, underscore, or dollar sign. Use letters, dollar signs, underscores, or digits for subsequent characters. Use up to 255 characters. Dont use Java keywords.

Remember that Java is a case-sensitive language. Slide 26 Keywords boolean char byte float void short double int long abstract if else final

private protected public static new this super interface package switch case break default for continue do extends

class volatile while return throw try catch finally transient instanceof true false throws native implements import

synchronized const goto null Definition A keyword is a word thats reserved by the Java language. As a result, you cant use keywords as identifiers. Murachs Java SE 6, C2 2007, Mike Murach & Associates, Inc. Slide 27 Write a Program that asks user to enter two numbers and displays the larger number Inputs:

two numbers entered via keyboard Must be able to read the numbers Must be able to save the numbers in the program Declare two variables Process: Compare the two numbers Output: Must be able to display the result. Two of the eight primitive data types Type Bytes Description int 4 Integers from -2,147,483,648 to 2,147,483,647. double 8 Numbers with decimal places that range from -1.7E308 to 1.7E308 with up to 16 significant digits.

Variables and data types A variable stores a value that can change as a program executes. Java provides for eight primitive data types that you can use for storing values in memory. The int data type is used for storing integers (whole numbers). The double data type is used for storing numbers that can have one or more decimal places. Murachs Java SE 6, C2 2007, Mike Murach & Associates, Inc. Slide 29 How to declare and initialize variables To initialize a variable, you declare a data type and assign an initial value to the variable. An assignment statement assigns a value to a variable. This value

can be a literal value, another variable, or an expression. If a variable has already been declared, the assignment statement doesnt include the data type of the variable. Naming recommendations for variables Start variable names with a lowercase letter and capitalize the first letter in all words after the first word. Each variable name should be a noun or a noun preceded by one or more adjectives. Try to use meaningful names that are easy to remember. Murachs Java SE 6, C2 2007, Mike Murach & Associates, Inc. Slide 30 How to declare and initialize a variable in one

statement Syntax type variableName = value; Examples int scoreCounter = 1; double unitPrice = 14.95; // initialize an integer variable // initialize a double variable How to code assignment statements int quantity = 0; int maxQuantity = 100; // initialize an integer variable // initialize another integer variable

// two assignment statements quantity = 10; // quantity is now 10 quantity = maxQuantity; // quantity is now 100 Murachs Java SE 6, C2 2007, Mike Murach & Associates, Inc. Slide 31 The basic operators for arithmetic expressions Operator Name + Addition Subtraction *

Multiplication / Division Description Adds two operands. Subtracts the right operand from the left. Multiplies the right and left operands. Divides the right operand into the left. If both are integers, the result is an integer. How to code arithmetic expressions An arithmetic expression consists of one or more operands and arithmetic operators. When an expression mixes int and double variables, Java automatically casts the int types to double types. To keep the decimal places, the variable that receives the result must be a double.

Murachs Java SE 6, C2 2007, Mike Murach & Associates, Inc. Slide 32 Statements that use simple arithmetic expressions // integer arithmetic int x = 14; int y = 8; int result1 = x + y; int result2 = x - y; int result3 = x * y; int result4 = x / y; // // //

// result1 result2 result3 result4 // double arithmetic double a = 8.5; double b = 3.4; double result5 = a + b; double result6 = a - b; double result7= a * b; double result8 = a / b; // // //

// result5 = 11.9 result6 = 5.1 result7 = 28.9 result8 = 2.5 Murachs Java SE 6, C2 2007, Mike Murach & Associates, Inc. = = = = 22 6

112 1 Slide 33 Using Java Classes To develop Java applications, we need to use many different Java classes. Groups of related Java classes are organized into packages. To use a class from a package we use the import statement to import the class. Common Java packages Package name java.lang java.text

java.util java.io java.sql java.applet Murachs Java SE 6, C2 Description Provides classes fundamental to Java, including classes that work with primitive data types, strings, and math functions. Provides classes to handle text, dates, and numbers. Provides various utility classes including those for working with collections. Provides classes to read data from files and to write data to files. Provides classes to read data from databases and

to write data to databases. An older package that provides classes to create an applet. 2007, Mike Murach & Associates, Inc. Slide 35 Common Java packages (continued) Package name java.awt java.awt.event javax.swing Murachs Java SE 6, C2 Description

An older package called the Abstract Window Toolkit (AWT) that provides classes to create graphical user interfaces. A package that provides classes necessary to handle events. A newer package called Swing that provides classes to create graphical user interfaces and applets. 2007, Mike Murach & Associates, Inc. Slide 36 How to import Java classes All classes stored in the java.lang package are automatically available to all Java programs. To use classes that arent in the java.lang package, you can code an import statement.

To import one class from a package, specify the package name followed by the class name. To import all classes in a package, specify the package name followed by an asterisk (*). Murachs Java SE 6, C2 2007, Mike Murach & Associates, Inc. Slide 37 Reading Data Entered from Keyboard Need utilities: Class Scanner: A simple text scanner which can parse primitive types and strings java.util.Scanner Methods: nextDouble, nextInt

Must import the Scanner class to program. import java.util.Scanner; System.in The "standard" input stream. This stream is already open and ready to supply input data. Typically this stream corresponds to keyboard input. Example: Scanner sc = new Scanner(System.in) ; double num1 = sc.nextDouble(); How to use Java classes 1. Create an object from a class Syntax ClassName objectName = new ClassName(arguments);

Examples Scanner sc = new Scanner(System.in); // creates a Scanner object named sc 2. Call a method from an object Syntax objectName.methodName(arguments) Examples double subtotal = sc.nextDouble(); // get a double entry from the console String currentDate = now.toString(); // convert the date to a string A static method of a class can be called directly without first creating an object from the class.

How to call a static method from a class Syntax ClassName.methodName(arguments) Examples String sPrice = Double.toString(price); // convert a double to a string double total = Double.parseDouble(userEntry); // convert a string to a double Murachs Java SE 6, C2 2007, Mike Murach & Associates, Inc. Slide 40 The larger of two numbers max method of the Math Class

The max method is declared as static (see Java API) public static float max(float a, float b) Example: Math.max(num1,num2) Other methods: public static double pow(double a, double b) a raises to the power of b Math.pow(a, b); Display Result System.out Class System.out.println(data) System.out.print(data) System.out.println("The larger number is: " + Math.max(num1,num2));

Code Example import java.util.Scanner; public class Test2 { public static void main(String[] args) { Scanner sc = new Scanner(System.in) ; System.out.println("enter the first number: "); double num1 = sc.nextDouble(); System.out.println("enter the second number: "); double num2 = sc.nextDouble(); System.out.println("The larger number is: " + Math.max(num1,num2)); } } Formula to Expression B

A A 2 AB 2 A B CD AB CD B A CD X Y X

X A B A B CD AB C D Date Class java.util.Date The class Date represents a specific instant in time, with millisecond precision. Date myDate = new Date(); System.out.println("Today is: " + myDate.toString());

Note: import java.util.Date; Note: import java.util.*;

Recently Viewed Presentations

  • SCIEnce Pass Review Landforms & Oceans

    SCIEnce Pass Review Landforms & Oceans

    Careless dumping of trash on land or in oceans pollutes those areas; smoke and fumes from burning fuels pollutes the air; oil spills harm the ocean and can cause life there to be killed. Careless human activities in agriculture, industry,...
  • Syllabic Scramble In this experiment, you will be

    Syllabic Scramble In this experiment, you will be

    Syllabic Scramble In this experiment, you will be presented with 10 syllables. Instructions: Step 1: Play all ten syllables at least once time. Step 2: Arrange the syllables in the correct order to reveal a birthday wish to Peter.
  • Testiranje - FER

    Testiranje - FER

    Oblikovanje programske potpore Testiranje (ispitivanje) programske potpore Tema Testiranje i ciljevi testiranja Klasifikacija testiranja Upoznavanje procesa testiranja Principi testiranja sustava i komponenti Strategije testiranja Funkcionalno i strukturno testiranje Generiranje test slučajeva Svojstva alata za automatizaciju testiranja Cilj: Upoznavanje tehnika testiranja...
  • Mexican Culture - Central Dauphin School District

    Mexican Culture - Central Dauphin School District

    Mexican Culture Three native civilizations and the Spanish influenced the culture of Mexico. The Olmecs Earliest or first civilization in Mexico Counting system Calendar (floods) Farmed using seasonal flooding Religion tied to forces of nature (jaguar-rain); temples Picture writing Artwork,...
  • Part D: Inheritance of Human Genetic Disorders

    Part D: Inheritance of Human Genetic Disorders

    Autosomal vs. Sex-linked Traits. Autosomal Trait = appears in both sexes equally, alleles appear on the autosomal chromosomes . Sex-linked Trait = a trait whose allele is located on the X chromosome. Appears mostly in males . Mostly recessive ....
  • Aims  Meet & Greet  Primary Liaison with Haverstock

    Aims Meet & Greet Primary Liaison with Haverstock

    Collation of information - Inclusion booklet for staff Observations by Inclusion staff + in-class support for Year 7 Full-time Nurture Group (September - December) + ILS Intervention programmes begin for most students after the October half term.
  • Draft Feedback on Workshop Results Core Evaluation Team

    Draft Feedback on Workshop Results Core Evaluation Team

    Draft Feedback on Workshop Results Core Evaluation Team
  • Sustainability, Economics, and Equity - Twinsburg

    Sustainability, Economics, and Equity - Twinsburg

    Sustainability, Economics, and Equity. Sustainability. Something is sustainable when it meets the needs of the present generation without compromising the ability of future generations to meet their own needs. Scarcity. A market occurs whenever people engage in trade.