תרגול 1: סביבת העבודה ומבוא ל-Java

Slides:



Advertisements
Similar presentations
STRING AN EXAMPLE OF REFERENCE DATA TYPE. 2 Primitive Data Types  The eight Java primitive data types are:  byte  short  int  long  float  double.
Advertisements

Lecture 1 Introduction to Java Erick Pranata © Sekolah Tinggi Teknik Surabaya 1.
Chapter 1 Introduction to JAVA. Why Learn JAVA? Java is one of the fastest growing programming language in the world. Java is one of the fastest growing.
BASIC JAVA. Hello World n // Hello world program public class MyFirstJavaProgram { public static void main(String args[]) { char c = 'H'; String s =
Primitive Data Types byte, short, int, long float, double char boolean Are all primitive data types. Primitive data types always start with a small letter.
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.
Writing Methods. Create the method Methods, like functions, do something They contain the code that performs the job Methods have two parts.
CMSC 341 Introduction to Java Based on tutorial by Rebecca Hasti at
JOptionPane class. Dialog Boxes A dialog box is a small graphical window that displays a message to the user or requests input. A variety of dialog boxes.
Introducing Java.
Introduction to Programming Prof. Rommel Anthony Palomino Department of Computer Science and Information Technology Spring 2011.
Session One Introduction. Personal Introduction Role of programmers Robot Examination HUD & HID Uploading Code.
The string data type String. String (in general) A string is a sequence of characters enclosed between the double quotes "..." Example: Each character.
Введение в JAVA. Java Java – язык программирования: объектно-ориентированный кроссплатформенный строго-типизированный.
Introduction to Programming David Goldschmidt, Ph.D. Computer Science The College of Saint Rose Java Fundamentals (Comments, Variables, etc.)
CS 11 java track: lecture 1 Administrivia need a CS cluster account cgi-bin/sysadmin/account_request.cgi need to know UNIX
© 2012 Pearson Education, Inc. All rights reserved. 1-1 Why Java? Needed program portability – Program written in a language that would run on various.
Intro and Review Welcome to Java. Introduction Java application programming Use tools from the JDK to compile and run programs. Videos at
CS591x A very brief introduction to Java. Java Developed by Sun Microsystems was intended a language for embedded applications became a general purpose.
Basics of Java IMPORTANT: Read Chap 1-6 of How to think like a… Lecture 3.
Java Programming Presented by Daniel Rosenthal Friday, November 30 th, 2007.
 JAVA Compilation and Interpretation  JAVA Platform Independence  Building First JAVA Program  Escapes Sequences  Display text with printf  Data.
Chapter 2: Java Fundamentals
Chapter 2: Java Fundamentals Type conversion,String.
Java Fundamentals 5. Java Programming: From Problem Analysis to Program Design, Second Edition2 Parsing Numeric Strings  Integer, Float, and Double are.
Can we talk?. In Hello World we already saw how to do Standard Output. You simply use the command line System.out.println(“text”); There are different.
A Simple Java Program //This program prints Welcome to Java! public class Welcome { public static void main(String[] args) public static void main(String[]
National Taiwan University Department of Computer Science and Information Engineering National Taiwan University Department of Computer Science and Information.
4-Nov-15 Air Force Institute of Technology Electrical and Computer Engineering Object-Oriented Programming Design Topic 1: The Java Environment Maj Joel.
JAVA Practical Creating our first program 2. Source code file 3. Class file 4. Understanding the different parts of our program 5. Escape characters.
Affected Products –Java SE JDK and JRE 6 update 23 and earlier JDK 5.0 Update 27 and earlier SDK 1.4.2_29 and earlier –JRockit R and earlier (JDK/JRE.
BEGINNING PROGRAMMING.  Literally – giving instructions to a computer so that it does what you want  Practically – using a programming language (such.
FUNDAMENTALS 2 CHAPTER 2. OPERATORS  Operators are special symbols used for:  mathematical functions  assignment statements  logical comparisons 
Overview of Java CSCI 392 Day One. Running C code vs Java code C Source Code C Compiler Object File (machine code) Library Files Linker Executable File.
Lab 01-2 Objectives:  Writing a Java program.  How to send output to the command line console.  Learn about escape sequences.  Learn how to compile,
A Simple Java Program //This program prints Welcome to Java! public class Welcome { public static void main(String[] args) { public static void main(String[]
© 2012 Pearson Education, Inc. All rights reserved types of Java programs Application – Stand-alone program (run without a web browser) – Relaxed.
introductory lecture on java programming
CSM-Java Programming-I Spring,2005 Fundamental Data Types Lesson - 2.
Spring 2009 Programming Fundamentals I Java Programming XuanTung Hoang Lecture No. 8.
© 2007 Pearson Addison-Wesley. All rights reserved2-1 Character Strings A string of characters can be represented as a string literal by putting double.
Computer Science A 1. Course plan Introduction to programming Basic concepts of typical programming languages. Tools: compiler, editor, integrated editor,
1 Lecture # 2. * Introducing Programming with an Example * Identifiers, Variables, and Constants * Primitive Data Types * Byte, short, int, long, float,
Features of JAVA PLATFORM INDEPENDENT LANGUAGE JAVA RUNTIME ENVIRONMENT (JRE) JAVA VIRTUAL MACHINE (JVM) JAVA APP BYTE CODE JAVA RUNTIME ENVIRONMENT.
Object Oriented Programming Lecture 2: BallWorld.
SESSION 1 Introduction in Java. Objectives Introduce classes and objects Starting with Java Introduce JDK Writing a simple Java program Using comments.
 It is a pure oops language and a high level language.  It was developed at sun microsystems by James Gosling.
Introduction CMSC 202 Fall Instructors Mr. Ryan Bergeron – Lecture Section 01 Tues/Thu 1:00 – 2:15 am, Sondheim 111 – Lecture Section 04 Tues/Thu.
2. Java language basics (1)
Introduction of Java Fikri Fadlillah, S.T.
Intro to ETEC Java.
Internet and Java Foundations, Programming and Practice
תרגול 1: סביבת העבודה ומבוא ל-Java
תרגול 1: סביבת העבודה ומבוא ל-Java
OUTPUT STATEMENTS GC 201.
Getting Started ARCS Lab..
Writing Methods.
תרגול מס' 3 עבודה עם מחרוזות (Strings) מתודות (Methods) העברת פרמטרים
Introduction to Java Programming
An Introduction to Java – Part I, language basics
Escape Sequences Some Java escape sequences: See Roses.java (page 68)
An overview of Java, Data types and variables
תרגול 1: סביבת העבודה ומבוא ל-Java
Advanced Programming CS206
Differences between Java and JavaScript
Dr. Sampath Jayarathna Cal Poly Pomona
JOptionPane class.
Review of Java Fundamentals
Chapter 2: Java Fundamentals cont’d
CS 240: Advanced Programming Concepts
Presentation transcript:

תרגול 1: סביבת העבודה ומבוא ל-Java תוכנה 1 תרגול 1: סביבת העבודה ומבוא ל-Java 1

מנהלות אתר הקורס: http://courses.cs.tau.ac.il/software1/1516a/ מתרגלים: ברית יונגמן (שעת קבלה: שלישי ב-8:00 בתיאום מראש) לנה דנקין (שעת קבלה: רביעי ב-17:00, בתיאום מראש) סביבת המחשוב באוניברסיטה היא Linux תנאי קדם: פתיחת חשבון אישי במחשבי האוניברסיטה הנחיות לפתיחת חשבון והכרת סביבת העבודה באתר הקורס. 2

עוד מנהלות נוהל הגשת תרגילים (פרטים מלאים באתר) מועד ההגשה שיטת חישוב הציון (85 מבחן + 15 תרגילים) הגשה באיחור הגשה דרך ה- moodle פורום הקורס (גם ב-moodle) הגשת תרגיל מספר 1 ביום ה' הבא פרטים באתר יש להגיש את קבצי הקוד עם סיומת java ולא קבצי class

סביבת פיתוח והרצה ל-Java Java SE (Standard Edition) 7.0 חבילת סביבת ההרצה: JRE (Java Runtime Environment) that includes: JVM (Java Virtual Machine) Standard Class Library חבילת ערכת הפיתוח: JDK (Java Development Kit) that includes: JRE Command line tools: compiler, debugger etc. הורדה ותיעוד ב-http://www.oracle.com/technetwork/java/javase/downloads/index.html 4

סביבת פיתוח שלובה IDE = Integrated Development Environment סביבה המשלבת רכיבי/כלי פיתוח עצמאיים: עורך טקסט (editor) סייר הקבצים (browser) מהדר (compiler) סביבת זמן ריצה (JRE) מנפה השגיאות (debugger) ועוד... Eclipse – ה- IDE בו נשתמש בקורס. 5

Eclipse IDE המתאים גם לפיתוח תוכנה ב Java. ניתן להתקנה ב- Linux, Windows ועוד דורש התקנה בנפרד של JDK אתר הבית: www.eclipse.org הוראות התקנה ושימוש – באתר הקורס. מותקן על כל המחשבים בכיתת המחשבים בשרייבר. 6

הגדרת משתנה ב Java לכל משתנה יש את הטיפוס שלו עליו מצהירים בעת הגדרת המשתנה. ניתן להצהיר על משתנה מבלי לתת לו ערך, ולאתחל אותו בשורה נפרדת בהמשך התוכנית String str1 = "Hello"; char c = ‘a’; int someNum = 17; טיפוס שם משתנה ערך int i; i = 5;

מבנה תוכנית ב Java "כתבו תוכנית בשם MyProg אשר מדפיסה את השורה “Java is the best!” public class MyProg{ public static void main(String[] args){ System.out.println("Java is the best!"); } כל תוכנית בנויה ממחלקה (class) אחת לפחות. במקרה שלנו, מחלקה בשם MyProg.

מבנה תוכנית ב Java "כתבו תוכנית בשם MyProg אשר מדפיסה את השורה “Java is the best!” public class MyProg{ public static void main(String[] args){ System.out.println("Java is the best!"); } על מנת שנוכל להריץ את התוכנית שלנו, עלינו לממש מתודה בשם main עם חתימה אחידה וקבועה.

מבנה תוכנית ב Java "כתבו תוכנית בשם MyProg אשר מדפיסה את השורה “Java is the best!” public class MyProg{ public static void main(String[] args){ System.out.println("Java is the best!"); } ב Java – כל בלוק תחום על ידי סוגריים מסולסלים, כולל הגדרות מחלקות, מתודות וכו'. בסוף כל פקודה צריך להוסיף התו ";". ירידות שורה והזחות נועדו לקריאות בלבד. הן לא משפיעות כלל על התנהגות התוכנית.

טיפוסי השפה טיפוסים יסודיים (פרימיטיביים): 8 טיפוסים מוגדרים בשפה שמיועדים להכיל ערכים פשוטים: מספרים שלמים: byte, short, int, long מספרים ממשיים: float, double תווים: char ערכים בוליאניים: boolean טיפוסי הפנייה: טיפוסים מורכבים היכולים גם להכיל מידע וגם לספק שירותים (יוסבר בהמשך) המתכנת יכול להגדיר טיפוסי הפנייה חדשים דוגמאות מיוחדות: מחרוזות ומערכים 11 11

הטיפוסים הפרימיטיביים

ASCII Table – char values 13

טיפוסים לא פרימיטיביים טיפוסי הפניה (references) הם משתנים שמצביעים אל אובייקטים. דוגמא: הגדרת מחרוזת (String): String myString = new String("Hello World“); 14

טיפוסים לא פרימיטיביים דוגמא: הגדרת מחרוזת (String): String myString = new String("Hello World“); הגדרת עצם (אובייקט) מטיפוס String. נשתמש במילה השמורה new בכל פעם שנרצה לייצר עצם מטיפוס לא פרימיטיבי 15

מחרוזות מחרוזות הן אובייקט המחזיק אוסף של תווים. אופרטור שרשור: "Hello " + "World" is "Hello World" "19" + 8 + 9 is "1989" דוגמאות לפונקציות מהמחלקה String: עוד ב- http://docs.oracle.com/javase/7/docs/api/index.html?java/lang/String.html String str1 = "Hello"; char c = str1.charAt(0); String str2 = str1.toUpperCase(); int strLength = str1.length(); // c == ‘H’ // str2 == "HELLO" // strLength == 5 16

המרת מחרוזות למספרים Long.parseLong Integer.parseInt Short.parseShort Byte.parseByte Double.parseDouble Float.parseFloat Boolean.parseBoolean public static void main(String[] args){ int i = Integer.parseInt("1"); double d = Double.parseDouble("-12.45e2"); } // i==1 // d==-1245.0 17

איך נדע אילו פקודות קיימות ...?

והתשובה

מערכים בקצרה מערך של int בשם odds: מבנה נתונים פשוט אוסף של פריטים מאותו טיפוס גישה באמצעות אינדקס נשתמש ב [] לציין טיפוס מסוג מערך. מערך של int בשם odds: הרחבה על מערכים בתרגול הבא int[] odds = new int[8]; אינדקס (מתחיל מ-0) 1 2 3 4 5 6 7 1 3 5 7 9 11 13 15 odds reference odds.length == 8

מערכים

העברת ארגומנטים לתכנית public class MyClass { public static void main(String[] args) { System.out.print(args.length + "\t"); System.out.print(args[0] + "\t"); System.out.print(args[args.length - 1]); } מערך המכיל את הארגומנטים שהועברו לתוכנית עם הרצתה.

העברת ארגומנטים לתכנית כיצד מעבירים ארגומנטים לתוכנית? 2 דרכים אפשריות: command line: Eclipse:Run ➙ Run Configurations ➙ Arguments public class MyClass { public static void main(String[] args) { System.out.print(args.length + "\t"); System.out.print(args[0] + "\t"); System.out.print(args[args.length - 1]); } מהו פלט התוכנית בדוגמא הזו?

מחרוזות ותווים כתוב תוכנית שמקבלת תו כארגומנט ומדפיסה: את התו את התו העוקב לו public static void main(String[] args){ char c = args[0].charAt(0); char c1 = (char)(c + 1); System.out.println(c + "\t" + c1); } 24

תווים מיוחדים Escape Sequences Description \t Tab \n Newline \r Carriage return \’ Single quote \” Double quote \\ Backslash 25

מחרוזות ותווים כתוב תוכנית המקבלת תו מ- {a,b,...,z} ומדפיסה את ה- Uppercase שלו נחשב את המיקום של התו ב abc ונמיר אותו לאותו תו (אותו מיקום) ב ABC public static void main(String[] args){ char c = args[0].charAt(0); System.out.println((char) (c – 'a' + 'A')); } פתרון א': 26

דרכים נוספות?

מחרוזות ותווים בעזרת String.toUpperCase() בעזרת Character.toUpperCase() public static void main(String[] args){ System.out.println (args[0].toUpperCase()); } פתרון ב': public static void main(String[] args){ char c = args[0].charAt(0); System.out.println(Character.toUpperCase(c)); } פתרון ג': 28

המרת טיפוסים פרימיטיביים public static void main(String[] args){ long l = 2000000000+2000000000; int i = (int) 1.99999999; float f = (float) 1.99999999; f = 5/2; f = (float) (5/2); f = (float) 5/2; f = 5 / (float) 2; short a = 2; short c = a*a; } // l == -294967296 // i == 1 // f == 2 // f == 2 // f == 2 // f == 2.5 // f == 2.5 // compilation error: cannot convert from int to short עוד על המרות ב- http://java.sun.com/docs/books/jls/third_edition/html/conversions.html 30

הסוף... 31