Lecture 1 Introduction
Instructor Name: Seokwoo Song Office: business 524 Phone: Office Hours: M W 4:30 – 5:30 PM or by appointment Website:
GTA Name: Phone: Office Hours: To be announced
Required Textbook Joel Adams, Alice in Action with Java, Course Technology ISBN Pre-requisite 2303 Intro to MIS and Data Processing
Course Objectives Introduce OOP using JAVA Understand JAVA programming Understand the issues related to web- programming using JAVA
Evaluation 3 programming assignments Two Exams (6/25; 7/11) Final Exam (7/25, comprehensive) Point Distribution Homework 15 % First Two exams 50 % Final Exam 35 % Total100% Grades are calculated as follows: (3 homeworks/300)* 15 + (2 exams/200)*50 + (final/100)*35 100
Evaluation Weighted Average for Final Grade: 90 % or HigherA 80 – 89 %B 70 – 79 %C 60 – 59 %D 60 % or LessF
Each programming assignment will be graded based on correctness, completeness, neatness, documentation, and design. If any assignment is found to be same as the other, both assignments will be marked as ZERO, no exception. It happens twice, and the final grade “F” will be given to the student.
Class attendance is required. During the class, any student who leaves without notice will have penalty (5 points each occasion).
Software JDK 2 SDK, SE version TextPad (freeware, editing software) NotePad Eclipse
Lecture Note
Using TextPad
Using NotePad After completing the code, named Welcome1.java, go to Accessories/Command Prompt. c:\>javac Welcome1.java// Compile c:\>java Welcome1 // Execute
History of the Language Java Developed by Sun Microsystems in 1991 as part of a project to develop software for consumer electronic departments (TVs, VCRs, toasters,etc.). Its goal was to be small, fast, efficient, and easily portable to a wide range of hardware devices.
A Definition of Java Java is a “simple, object-oriented, interpreted, robust, secure, architecture-neutral, portable, high-performance, multithreaded, and dynamic language.” From “The Java Language: A White Paper”
Java is simple Small: easier to write, easier to compile, easier to debug A subset of C++ Omits confusing features of C++ no pointers or pointer arithmetic string and arrays are real objects memory management is automatic no multiple inheritance no operator overloading
Java is Object-Oriented Focus design on objects and interface inheritance (new classes inherit characteristics of existing classes) encapsulation (fields/methods can be hidden) polymorphism (same code has different effects at run time) message passing (passing information to methods)
Java is Interpreted Compiles to byte code, not machine code Interpreted by the browser Benefits: rapid prototyping easy experimentation Java Source Code Java compiler Java Bytecode Code Java Interpreter CPU JVM
Traditional Compiled Programs Your code Compiler (Pentium ) Compiler (PowerPC) Compiler (SPARC) Binary File - Pentium Binary File - PowerPC Binary File - SPARC
Java Programs Java Code Java Compiler - Pentium Java Compiler - PowerPC Java Compiler - SPARC Java Bytecode Java Interpreter - Pentium Java Interpreter - PowerPC Java Interpreter - SPARC