CSCI 224 Introduction to Java Programming. Course Objectives  Learn the Java programming language: Syntax, Idioms Patterns, Styles  Become comfortable.

Slides:



Advertisements
Similar presentations
A Programmer's Introduction to Java - from a S/370 user (c) IDMS/SQL News
Advertisements

1 Copyright © 2005, Oracle. All rights reserved. Introducing the Java and Oracle Platforms.
1 G54PRG Programming Lecture 1 Amadeo Ascó Adam Moore G54PRG Programming Lecture 1 Amadeo Ascó 3 Java Programming Language.
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
MC697 Object-Oriented Programming Using Java. In this class, we will cover: How the class will be structured Difference between object-oriented programming.
Introduction to Java The objectives of this chapter are: To describe the key aspects of Java To describe the Java software development kit (SDK) To explain.
Object Orientated Programming
IC211 Object Oriented Programming Overview of Java.
Java: History and Introduction (Lecture # 1). History… Java – Based on C and C++ – Developed in 1991 for intelligent consumer electronic devices – Green.
Introduction to Java Kiyeol Ryu Java Programming Language.
Introduction to Java Programming, 4E
For more Lectures and Notes Visit
Introduction to Java.
Session-02. Objective In this session you will learn : What is Class Loader ? What is Byte Code Verifier? JIT & JAVA API Features of Java Java Environment.
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
01 Introduction to Java Technology. 2 Contents History of Java What is Java? Java Platforms Java Virtual Machine (JVM) Java Development Kit (JDK) Benefits.
LESSON 1 INTRODUCTION Compiled By: Edwin O. Okech [Tutor, Amoud University] JAVA PROGRAMMING.
CMSC 202 Computer Science II for Majors Fall 2009 Introduction.
Sadegh Aliakbary Sharif University of Technology Fall 2011.
Suma D Event Driven programming using java(CSE210) Overview of java Packages and interface Exception handling Multithreading Input/output.
Advanced OOP MCS-3 OOP BSCS-3 Lecture # 1
Introduction to Java Programming. Contents 1. Java, etc. 2. Java's Advantages 3. Java's Disadvantages 4. Types of Java Code 5. Java Bytecodes 6. Steps.
CSC 142 A 1 CSC 142 Introduction to Java [Reading: chapter 0]
Chapter 1 Coding Introduction.
Introduction to Java CSIS 3701: Advanced Object Oriented Programming.
Sadegh Aliakbary Sharif University of Technology Spring 2011.
Sadegh Aliakbary Sharif University of Technology Fall 2010.
CMSC 202 Computer Science II for Majors Object-Oriented Programming.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Programming Languages Machine.
CSCI 115 Computer Programming Overview. Computer Software System Software –Operating systems –Utility programs –Language compilers Application Software.
Java Introduction Lecture 1. Java Powerful, object-oriented language Free SDK and many resources at
Why Java? A brief introduction to Java and its features Prepared by Mithat Konar.
Sadegh Aliakbary Sharif University of Technology Fall 2012.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 1 Introduction to.
INTRODUCTION TO JAVA AND ANDROID. Slide 2 Our Ecosystem Java Eclipse Android SDK.
Jaeki Song ISQS6337 JAVA Lecture 03 Introduction to Java -The First Java Application-
Introduction and Features of Java. What is java? Developed by Sun Microsystems (James Gosling) A general-purpose object-oriented language Based on C/C++
Introduction to Java Programming with Forte Y. Daniel Liang.
Introduction to Java Programming. Introduction Course Objectives Organization of the Book.
Session 1 Introduction to Java. Objectives Java Simplified / Session 1 / 2 of 32 Explain the history of Java Explain Java in brief List the types of Java.
What Is Java? According to Sun in a white paper: Java: A simple, object-oriented, network-savvy, interpreted, robust, secure, architecture-neutral, portable,
Lecture 1 Introduction. Instructor Name: Seokwoo Song Office: business 524 Phone: Office Hours: M W 4:30 – 5:30 PM or by appointment
National Taiwan University Department of Computer Science and Information Engineering National Taiwan University Department of Computer Science and Information.
Getting started with Programming using IDE. JAVA JAVA IS A PROGRAMMING LANGUAGE AND A PLATFORM. IT CAN BE USED TO DELIVER AND RUN HIGHLY INTERACTIVE DYNAMIC.
Copyright © Mohamed Nuzrath Java Programming :: Syllabus & Chapters :: Prepared & Presented By :: Mohamed Nuzrath [ Major In Programming ] NCC Programme.
Application Architecture Using Java Hong Li. Introduction Developed by a team led by James Gosling at Sun Microsystem. Originally called Oak, designed.
Introduction Mehdi Einali Advanced Programming in Java 1.
Java – in context Main Features From Sun Microsystems ‘White Paper’
INTRODUCTION TO JAVA AND ANDROID. Slide 2 Our Ecosystem Java Eclipse Android SDK.
CSCI 115 Computer Programming Overview. Computer Software System Software –Operating systems –Utility programs –Language compilers Application Software.
1 Introduction to Java. 2 * 10% Assignments/ class participation * 10% Pop Quizzes * 05% Attendance * 25% Mid Term * 50% Final Term.
ITP 109 Week 2 Trina Gregory Introduction to Java.
Introduction to Programming 1 1 2Introduction to Java.
Introduction to JAVA Programming
Introduction to Java Programming, 4E Y. Daniel Liang.
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
Fundamental of Java Programming (630002) Unit – 1 Introduction to Java.
Chapter 1 Coding Introduction.
Object Oriented Programming in
Chapter 1 Introduction to Computers, Programs, and Java
Java programming lecture one
Introduction Enosis Learning.
PROGRAMMING IN JAVA. INTRODUCTION TO JAVA  Java is a general purpose computer programming language that is concurrent, class-based, object- oriented.
Introduction Enosis Learning.
Chapter 1 Coding Introduction.
(Computer fundamental Lab)
Java History, Editions, Version Features
Introducing Java.
Outcome of the Lecture Upon completion of this lecture you will be able to understand Fundamentals and Characteristics of Java Language Basic Terminology.
Presentation transcript:

CSCI 224 Introduction to Java Programming

Course Objectives  Learn the Java programming language: Syntax, Idioms Patterns, Styles  Become comfortable with OOP Learning to think in objects  Learn the essentials of the Java class library And how to learn about other parts when you need them

Writing Code  It is not enough to write code that works.  It is important to write code that is also Legible, Maintainable, Reusable, Fast and Efficient

Java  Sun defines Java as a: “…simple, object-oriented, network savvy, interpreted, robust, secure, architecture-neutral, portable, high- performance, multi-threaded, dynamic language.”

What is Java?  History of Java First started in 1990 as Sun’s Green project  Digitally controlled consumer devices identified as trend Trend did not grow as expected 1994 – WWW popularity Netscape packaged Java within browser  - MS Explorer followed suit Success ultimately depended on e-commerce

What is Java  Java is a high level,third generation programming language  Compared to other languages it is most similar to C and shares much of the syntax Unlike C++ Java is not a superset of C and substantial amounts of C code would need to be reworked to become a Java program

Java is :  A Platform  Simple  Object-Oriented  Platform independent  Safe  High Performance  Multi-Threaded  Garbage Collected

Platform  Three elements to Java The programing language The compiler The Java interpreter  The Java compiler creates byte code and not code native to particular platform. The result is that the JVM the runtime machine interprets this code on the fly and translates it to the machine.

Simple  Java is designed to be easy to write. Not a lot of special tricks to confuse beginners Memory allocation and deallocation are handled automatically. Syntax is straight forward in most situations.

Object Oriented  The core concept of Java Everything is an object. Huge libraries of objects are available.  Learning to use the API is essential

Platform independent  The Java byte code is never really executed on the host machine.  Each JRE / JVM does all the work of interfacing with the OS and machine.  Also eliminates having to deal with variations in platform architecture Integer is always four bytes.

Safe  Java was designed from the ground up to allow for execution across a network.  Applets – executed with set limitations on what they can do to within your system. Essentially they run in a sandbox.

High Performance  The Java byte code compiles on the fly with speeds that rival the C++ compiler.

Multi-Threaded  Java is inherently multi-threaded allowing a single program to execute different processes independently and continuously.  The is a cost to this for the programmer. Just as in C pointer arithmetic can be hard to debug, debugging threads is a challenge.

Garbage Collection  There is no need to explicitely allocate or de-allocate memory in Java.  No need to write destructor methods.  The JRE handles the trash.

Practical  What do you need to run Java. JDK – Java developer's Kit. JRE – Java Runtime Enviroment SDK – Java Software Development Kit  IDEs Several development tools exist.  The most basic thing you need is Notepad or any text editor to write the java source files. Jbuilder, Sun's One Studio, JCreator, Forte and Eclipse are just a few.

Development Tools  1995 – First JDK released by Sun (1.0) Very limited  JDK 1.1 released Limited GUI creation  1.2 released Major change – Swing components Java 2 SDK release 1.2 Better known as Java 2  Most current version: 1.5

Development Tools  Java 2 Editions Java 2 Platform, Standard Edition Java 2 Platform, Enterprise Edition Java 2 Platform, Micro Edition

Java Programs  Applets Java program running within client Web browser  Servlet Java program running on a server Can ‘cooperate’ with applet or application  Application Standalone program