Introduction to Java. Getting started, Java Basics. Prepared by Costantinos Costa for EPL 233. ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 1

Σχετικά έγγραφα
Instruction Execution Times

EPL 603 TOPICS IN SOFTWARE ENGINEERING. Lab 5: Component Adaptation Environment (COPE)

Test Data Management in Practice

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE)

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE)

ΕΠΛ 233: Αντικειμενοστρεφής Προγραμματισμός (Object-oriented programming)

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών

The Simply Typed Lambda Calculus

JAVA TUTORIAL ΠΕΡΙΕΧΟΜΕΝΑ. ΚΕΦΑΛΑΙΟ 1. Τί κάνει τη Java να ξεχωρίζει; Εγκαθιστώντας τη Java

derivation of the Laplacian from rectangular to spherical coordinates

TaxiCounter Android App. Περδίκης Ανδρέας ME10069

Βρίγκας Μιχαήλ Α.Μ.744 Μπράχος Χ. Ευάγγελος Α.Μ.795

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 133: ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΡΓΑΣΤΗΡΙΟ 3 Javadoc Tutorial

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Πώς μπορεί κανείς να έχει έναν διερμηνέα κατά την επίσκεψή του στον Οικογενειακό του Γιατρό στο Ίσλινγκτον Getting an interpreter when you visit your

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

Web Data Mining ΕΡΓΑΣΤΗΡΙΟ 2 & 3. Prepared by Costantinos Costa Edited by George Nikolaides. EPL Data Mining on the Web

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΤΕΧΝΙΚΗΣ. Ειδική διάλεξη 2: Εισαγωγή στον κώδικα της εργασίας

CYTA Cloud Server Set Up Instructions

ΑΝΑΠΤΥΞΗ ΠΑΙΧΝΙΔΙΟΥ ΣΟΒΑΡΟΥ ΣΚΟΠΟΥ ΓΙΑ ΤΗΝ ΕΚΜΑΘΗΣΗ ΕΝΝΟΙΩΝ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΣΕ JAVA

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΜΣ «ΠΡΟΗΓΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΚΗΣ» ΚΑΤΕΥΘΥΝΣΗ «ΕΥΦΥΕΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΑΝΘΡΩΠΟΥ - ΥΠΟΛΟΓΙΣΤΗ»

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο

Dynamic types, Lambda calculus machines Section and Practice Problems Apr 21 22, 2016

(C) 2010 Pearson Education, Inc. All rights reserved.

ΠΑΝΔΠΙΣΗΜΙΟ ΜΑΚΔΓΟΝΙΑ ΠΡΟΓΡΑΜΜΑ ΜΔΣΑΠΣΤΥΙΑΚΧΝ ΠΟΤΓΧΝ ΣΜΗΜΑΣΟ ΔΦΑΡΜΟΜΔΝΗ ΠΛΗΡΟΦΟΡΙΚΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ. του Γεράσιμου Τουλιάτου ΑΜ: 697

Code Breaker. TEACHER s NOTES

Hancock. Ζωγραφάκης Ιωάννης Εξαρχάκος Νικόλαος. ΕΠΛ 428 Προγραμματισμός Συστημάτων

English PDFsharp is a.net library for creating and processing PDF documents 'on the fly'. The library is completely written in C# and based

English PDFsharp is a.net library for creating and processing PDF documents 'on the fly'. The library is completely written in C# and based

Ψηφιακή ανάπτυξη. Course Unit #1 : Κατανοώντας τις βασικές σύγχρονες ψηφιακές αρχές Thematic Unit #1 : Τεχνολογίες Web και CMS

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική»

Approximation of distance between locations on earth given by latitude and longitude

Fractional Colorings and Zykov Products of graphs

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ. «Θεσμικό Πλαίσιο Φωτοβολταïκών Συστημάτων- Βέλτιστη Απόδοση Μέσω Τρόπων Στήριξης»

Partial Trace and Partial Transpose

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Εργαστήριο Αρ. 2

ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY 21 ος ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δεύτερος Γύρος - 30 Μαρτίου 2011

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Advanced Subsidiary Unit 1: Understanding and Written Response

Block Ciphers Modes. Ramki Thurimella

Assalamu `alaikum wr. wb.

Scrum framework: Ρόλοι

Ψηφιακή ανάπτυξη. Course Unit #1 : Κατανοώντας τις βασικές σύγχρονες ψηφιακές αρχές Thematic Unit #1 : Τεχνολογίες Web και CMS

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο

Microsoft Visual Studio Γιώργος Καµαρινός Developer Programs Marketing Manager Microsoft Hellas

Στο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά.

EE512: Error Control Coding

Υποστηρικτικό υλικό Σημειώσεις

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΝΑΥΤΙΛΙΑΚΩΝ ΣΠΟΥΔΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΗΝ ΝΑΥΤΙΛΙΑ

Λειτουργικά Συστήματα. Εισαγωγή

Maxima SCORM. Algebraic Manipulations and Visualizing Graphs in SCORM contents by Maxima and Mashup Approach. Jia Yunpeng, 1 Takayuki Nagai, 2, 1

Ασφάλεια σε χώρους αναψυχής: Ένα σύστημα από έξυπνα αντικείμενα

Modbus basic setup notes for IO-Link AL1xxx Master Block

ΜΟΝΤΕΛΑ ΛΗΨΗΣ ΑΠΟΦΑΣΕΩΝ

Strain gauge and rosettes

Physical DB Design. B-Trees Index files can become quite large for large main files Indices on index files are possible.

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000 NUTWBCAM

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #1 η : Εισαγωγή: Λογισμικό, Γλώσσες Προγραμματισμού, Java

Homework 3 Solutions

Ενότητα 2 Εργαλεία για την αναζήτηση εργασίας: Το Βιογραφικό Σημείωμα


Bring Your Own Device (BYOD) Legal Challenges of the new Business Trend MINA ZOULOVITS LAWYER, PARNTER FILOTHEIDIS & PARTNERS LAW FIRM

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

2 Composition. Invertible Mappings

Αντικειμενοστρεφής Προγραμματισμός

ίκτυο προστασίας για τα Ελληνικά αγροτικά και οικόσιτα ζώα on.net e-foundatio // itute: toring Insti SAVE-Monit

the total number of electrons passing through the lamp.

Ανάπτυξη διαδικτυακής διαδραστικής εκπαιδευτικής εφαρμογής σε λειτουργικό σύστημα Android

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006

PVC + ABS Door Panels

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ

Προσομοίωση BP με το Bizagi Modeler

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

ΟΡΓΑΝΙΣΜΟΣ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΔΙΟΚΤΗΣΙΑΣ

Εικονική Αναπαράσταση Νοηµατικής Γλώσσας στο ιαδίκτυο

Αντικειμενοστρεφής Προγραμματισμός

ΑΛΕΞΑΝΔΡΟΣ ΠΑΛΛΗΣ SCHOOLTIME E-BOOKS

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 11/3/2006

Διαχείριση Έργων Πληροφορικής

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

Πανεπιστήµιο Πειραιώς Τµήµα Πληροφορικής

Section 8.3 Trigonometric Equations

Αναπτύσσοντας developer tools στην Αpple. Αργύριος Κυρτζίδης Προπτυχιακός φοιτητής ΗΜΜΥ

[1] P Q. Fig. 3.1

TMA4115 Matematikk 3

ANSWERSHEET (TOPIC = DIFFERENTIAL CALCULUS) COLLECTION #2. h 0 h h 0 h h 0 ( ) g k = g 0 + g 1 + g g 2009 =?

Context-aware και mhealth

SPEEDO AQUABEAT. Specially Designed for Aquatic Athletes and Active People

Notes on the Open Economy

3.4 SUM AND DIFFERENCE FORMULAS. NOTE: cos(α+β) cos α + cos β cos(α-β) cos α -cos β

ιαδικτυακές Εφαρµογές

«Χρήσεις γης, αξίες γης και κυκλοφοριακές ρυθμίσεις στο Δήμο Χαλκιδέων. Η μεταξύ τους σχέση και εξέλιξη.»

Modern Greek Extension

Ανάπτυξη Οντολογικής Γνώσης για Τεκμηρίωση Οπτικοακουστικού Περιεχομένου ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

FSM Toolkit Exercises

Χρειάζεται να φέρω μαζί μου τα πρωτότυπα έγγραφα ή τα αντίγραφα; Asking if you need to provide the original documents or copies Ποια είναι τα κριτήρια

6.1. Dirac Equation. Hamiltonian. Dirac Eq.

Transcript:

Introduction to Java Getting started, Java Basics Prepared by Costantinos Costa for EPL 233 ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 1

Creating a Java program Required software (minimum): Java Development Kit for your platform (includes the Java compiler, Java Virtual Machine, Appletviewer, Libraries and other utilities) A text editor Recommended software: An IDE (Integrated Development Environment) There are many IDEs available (e.g. NetBeans, Eclipse, etc.) We will use Eclipse The CLASSPATH variable Tells the Java compiler and Java virtual machine where the libraries are stored It should include the current directory (.) Usually set in a batch file for easy execution (more on this in a later lab) ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 2

Creating Your First Application - HelloWorldApp To create this program, you will: Create a Java source file(*.java). Compile the source file into a bytecodefile.the Java compiler, javac, takes your source file and translates its text into instructions that the Java Virtual Machine (Java VM) can understand. Run the program contained in the bytecodefile. The Java VM is implemented by a Java interpreter, java.this interpreter takes your bytecodefile and carries out the instructions by translating them into instructions that your computer can understand. ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 3

Create a Java Source File If you are NOT USING an IDE: The Java files you create should be kept in a separate directory (with mkdir). Start a text editor. Type the code and store it in a file HelloWorldApp.java If you are USING an IDE: Each IDE has its own procedures Generally you create some sort of project and you add your classes (code) under that project We will demonstrate this with Eclipse ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 4

HelloWorldApp.java /** * The HelloWorldApp class implements * an application that simply displays * "Hello World!" to the standard output. */ public class HelloWorldApp { } public static void main(string[] args){ } System.out.println( Hello World! ); ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 5

Compile the Source File If you are NOT USING an IDE: javac HelloWorldApp.java If your prompt reappears without error messages, congratulations. You have successfully compiled your program. A HelloWorldApp.class file is created If you are USING an IDE: Depends on your IDE Eclipse does background compiling as you write your code Possible to instruct full code rebuild Most (if not all) IDEs allow you to export your.java and.class files ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 6

Compile the Source File ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 7

What is Eclipse? Eclipse is an open source project http://www.eclipse.org Consortium of companies, including IBM Launched in November 2001 Designed to help developers with specific development tasks Consists of four separate projects: Eclipse Project Eclipse Tools Project Eclipse Technology Project Eclipse Web Tools Platform Project ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 8

What you get with Eclipse A fully featured Java Development Toolkit (JDT) Used for writing Java programs Some features may be missing (e.g. limited GUI builder) but we are getting there The Plug-in Development Environment (PDE) Used for extending Eclipse Also used to convert eclipse to a product base for your own product ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 9

The Eclipse Platform Motivation Application development tools construction support Independent tool vendors support GUI and non-gui application development support Numerous content types support Java, HTML, C, XML,... Easy integration of tools Use of Java language for writing the tools Multiple operating systems support The Eclipse purpose is to provide the necessary services for integrating software developing tools Implemented as plug-ins ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 10

Eclipse Workbench Represents the desktop development environment It contains set of tools for resource management It provides common way of navigating through the resources Organized into perspectives containing views Multiple workbenches can be opened at the same time ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 11

Eclipse ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 12

Workspace Represents users data It is a set of user defined resources Files Contain arbitrary number of bytes Folders Contain other folders or files Projects Collections of files and folders ΕΠΛ233 Αντικειµενοστρεφής 13

Help system An extensible documentation system Used for creating and publishing documentation There are two different documentation styles: Help style documentation is published in the user guide API documentation is published in the programmer guide Help content is in HTML format Help navigation is in XML format ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 14

Team suport Provides support for: Versioning Configuration management Integration with team repository Includes a client for Concurrent Versions System (CVS) Allows team repository provider to hook into the environment Team repository providers specify how to intervene with resources Has optimistic and pessimistic locking support ΕΠΛ233 Αντικειµενοστρεφής Προγραµµατισµός 15

How is Eclipse Used? As an IDE - Integrated Development Environment Java Development Tooling (JDT) is used for building Java code Provides a set of workbench plug-ins for manipulating Java code Java projects, packages, classes, methods,... Java compiler is built in Used for compiling Java code Creates errors (special markers of code) if compilation fails As a product base Its flexible architecture used as a product framework Reuse plug-in architecture Create new plug-ins Customize the environment ΕΠΛ233 Αντικειµενοστρεφής Προγραµµατισµός 16

Language and platform neutral Eclipse is (programming) language neutral It is used mainly for as a Java IDE but there are plug-ins that serve as C/C++, Cobol and C# IDEs Eclipse is (human) language neutral The plug-in mechanism allows to add different languages (through plug-in fragments) Even though written entirely in Java, Eclipse is not strictly platform neutral This is due to the fact that Eclipse uses the operating system s native graphics Only available to platforms where SWT has been ported ΕΠΛ233 Αντικειµενοστρεφής Προγραµµατισµός 17

Getting Eclipse ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 18

http://www.eclipse.org Main point for finding Eclipse resources Downloads Articles Discussion groups Bugs Contains various resources for using Eclipse Contains references to other Eclipse related sites ΕΠΛ233 Αντικειµενοστρεφής Προγραµµατισµός 19

Create new Application ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 20

Create a new class ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 21

Run it ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός 22