EECS1710. Announcements. Labtests have been returned Term Test #01 marking is in progress. Next Labtest: Thu Oct 23/Fri Oct 24
|
|
- Jodie Webster
- 5 years ago
- Views:
Transcription
1 EECS1710 Click to edit Master Week text 05, styles Lecture 10 Second level Third level Fourth level Fifth level Fall 2014! Thursday, Oct 09, Announcements Labtests have been returned Term Test #01 marking is in progress Next Labtest: Thu Oct 23/Fri Oct 24 Next Term Test: Tue Oct
2 Checklist from prev lecture (Oct 02, 2014) " Ch 3 " read section 3.1 Anatomy of an API " review Ch 3 KC s 1-6 " do Ch 3 RQ s 1-13 " do Ch 3 Ex s Plan for today 3.1 General properties of APIs 3.1 Passing by value 3.1 Overloading 3.1 Binding with the Most Specific 4 2
3 Walkthrough: Looking at an API 5 Basic Info about Java APIs The tool called javadoc generates the html for the APIs it scrapes the comments from the source code The tool javadoc has evolved over successive versions html format has changed (from what is described in the textbook) The cascading style sheets (CSS) has changed as well The basic format is as follows: Class Section Summary Details 6 We will review each of these in turn 3
4 Class Section f"lly qualified name of class allows client to impor6 this class what does this class extend and/or implement advanced topic, we will ret"r; to this later Description of what ser=ices this class provides, in a general way 7 The Summary Section field(s) a listing of the class aabibutes that are public and thus can be accessed by clients of this class one field is static the other field is non-static constb"ctor(s) a listing of constb"ctors for instantiating this class notice the default constb"ctor is not listed the constb"ctor for this class requires one parameter utilitd classes do not have any constb"ctor defined method(s) a listing of the methods that are public and thus can be accessed by clients of this class one method is static the other methods are non-static one method is overloaded 8 4
5 The Detail Section the summard section includes only the first sentence of the documentation for each class member and each constb"ctor the detail section will have f"r6her inforeation, including the contract for each method 9 API & UML Class Diagram: Two different sides of the same coin chapter03::teddybear defaultfurcolor : Color heightincentimeters : int TeddyBear(Color) compareto(object) : int getgenericgreeting() : String wavehand() : void wavehand(boolean) : void static members are shown in underline 10 5
6 What does "pass by value" mean? In source code, methods get invoked with parameters At run-time, when the bytecode is invoked, each of these parameters get evaluated The evaluation produces a value The value gets sent to the method Within the body of the method, the value then gets utilized 11 Example I when this parameter gets evaluated, what is its value? 12 6
7 Example I 13 Parameter being evaluated: value Result of evaluation: a set of 8 bytes (64 bits) that represent the numerical value in the IEEE 754 representation scheme Those 64 bits had been previously stored at some location in memory (suppose this location is address 1058) What is sent to the body of the method abs(double)? the 64 bits that represent the value What is NOT sent to the body of the method abs(double): the memory location 1058 of variable value Example I Could the body of the method abs(double) ever cause the value of value to be changed from to some other value? No, definitely not. The variable value is not in scope. The body of the method abs(double) was given 32 bits. The body of the method could take those 32 bits and modify them (change the value), but wouldn't have any bearing on the variable value 14 If the body of the method had the information that the memory location for variable value is 1058, then it could potentially alter the value of variable value 7
8 Memory Diagram Step 1: Derive the symbol table Identifier Type Block Address args String array 0 value double 4 the value for this variable will get 8 by6es, star6ing at location 4 (assuming a star6ing memord location of 0) 15 Memory Diagram Step 2: Derive the memory representation, assuming zero-offset 16 8
9 Step 3: Build the memory model, assume block gets loaded at some non-zero memory address 17 + = Memory Diagram When the byte is run, the assignment statement will get invoked. The IEEE 754 representation of f is as follows: This value is stored in runtime memory, in the memory locations that have been allocated for the variable value 18 9
10 The memory diagram gets updated like this 19 But you will not be expected to derive the binary representation according to IEEE 754 or other numeric representations for this course So memory diagrams can get updated like this 20 10
11 Recap: Passing primitive values as parameters The value of a primitive value is a representation according to some scheme IEEE 754 (for float and double) two's complement (for int, long, short, byte) unsigned format (char) proprietary scheme (boolean) 21 Recap: What is the value of a non-primitive variable? 22 11
12 BUT Non-primitive values are a different situation The value of a non-primitive variable is a memory location What is "Passing by value" for parameters that are nonprimitive? To demonstrate this, we will use the Date class 23 About the java.util.date class We will use the Date class in the package java.util ignore the other Date class found in the package java.sql The class provides services for representing and working with points in time The representation of time is not simple: relative to which calendar? relative to which time zone? relative to what starting point? 24 12
13 About the java.util.date class Here's how the Date class in the package java.util works Clients of the class can create instances Each instance represents a particular point in time The instance encapsulates a long value called time the variable time is not a field; it is hidden from the client the variable time holds the number of milliseconds that have elapsed since standard base time (also called unix epoch). standard base time is represented by 0L 0L, when translated to a Gregorian calendar, corresponds to: Jan 01 00:00:00 UTC About the java.util.date class The default constructor Date() creates an instance that represents the time at which it was allocated, measured to the nearest millisecond since standard base time The constructor Date(long) creates an instance and initializes it to represent the specified number of milliseconds since standard base time 26 13
14 Demonstrating Date Can you predict this outhut? Can you predict this outhut? 27 More about the Date class The method gettime() Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this Date object
15 Demonstrating Date 29 Can you predict these outhuts? More about the Date class The number of milliseconds can be manipulated What is one day in milliseconds? 24 hours/day x 60 minutes/hour x 60 seconds/minute x 1000 msec/second 30 15
16 Demonstrating Date Can you predict these outhuts? 31 More about the Date class The method before(date) Tests if this date is before the specified date For example, say we have the following: timepoint1 represents Wed Oct 08 16:22:01 EDT 2014 timepoint2 represents Tue Oct 07 16:22:01 EDT 2014 timepoint2 happened before timepoint1, so timepoint2.before(timepoint1) returns true timepoint1.before(timepoint2) returns false 32 16
17 Demonstrating Date Can you predict these outhuts? 33 Example II 34 when this parameter gets evaluated, what is its value? 17
18 Example II 35 Parameter being evaluated: d2 Result of evaluation: a set of 4 bytes (32 bits) that represent a location in memory where a Date object is being stored Suppose this location is address 2612 What is sent to the body of the method before(date)? the 32 bits that represent the address 2612 What is NOT sent to the body of the method abs(double): the memory location where the variable d1 is being represented (suppose the memory location for variable d1 is 800). Example II Could the body of the method before(date) ever cause the value of d1 to be changed? The body of the method before(date): was given the reference to the Date object (the 32 bits that represent the location 2612); the body of the method can potentially use that reference to change the Date object. was not given the memory location for variable d1, and so cannot change the value of the variable d
19 Non-primitive variables The value of a non-primitive variable is a location. The values of the attributes of an object that lives at that location are a different thing. Be careful: do not confuse the value of a non-primitive variable with the value of an object's attribute 37 Parameters Passed by Value Key Concept #4 Parameters in Java are passed by value. This means only their values are sent to the invoked method. Other languages provide pass by reference in which the address is sent. Passing by value is safer because methods cannot change variable local to the calling program
20 Recap: Primitive vs Non-Primitive Variables Variable Characteristics of its value primitive a set of using 0 s and 1 s that corresponds to a numerical or boolean value the numerical or boolean value is determined according to the relevant representation scheme (e.g., int, long, double, etc) nonprimitive a set of using 0 s and 1 s that corresponds to a memory location (address) the only type of address that is valid is the starting byte of an object in runtime memory that has the same (compatible) type as the declaration of the variable e.g., the statement Rectangle r; means that the variable r holds an address and that address must be the starting byte of a Rectangle object 39 the value of a non- primitive variable is an address What is overloading? when two or more methods in a class share the same name the compiler allows this, provided they have different parameter lists the compiler enforces that every methods must have a unique signature the compiler does not allow methods with the same signature, even if they have different how does the compiler determine which of the overloaded methods should be invoked? it performs "binding with the most specific" it needs to do this in order to create its bytecode 40 20
21 Binding with the Most Specific What the compiler does, given a method invocation with a list of parameter values first, we need to compile the list of parameter types from the list of parameter values 41 Here are some examples: 78, 34.0f, "Hello", d1 int, float, String, Date 1, 2 int, int , 9 double, int Binding with the Most Specific What the compiler does, Identify the relevant class (bytecode) Look within the bytecode for a method with the most compatible signature look for a matching method name 1. if the list of parameter types is an exact match to a signature, use that method 2. if the list of parameter types can be promoted into an exact match to a signature, then binding can still happen if there are multiple possible matches with promotion, then choose the option that requires the least promotion 42 21
22 Example Determine the method binding Blah.doMagic(4.0, 6.7); Blah.doMagic(4.0, 3f); Blah.doMagic(4, 3f); Blah.doMagic(4, 3L); Blah.doMagic(4, 3); 43 Exercise 3.3 Visit the Java API (link can be found on course website) Two of the classes are called Date. (a) How can there be two classes with the same name? (b) If such a name were referenced in a program, how would the compiler know which one to bind with? (c) Is the compareto method in java.util.date overloaded? 44 22
23 Exercise 3.10 Bind the invocation Math.round(2.5) (a) Is the method round overloaded? (examine API of Math class) Write a short program that proves your binding How could you prove the following: (c1) the invocation does not bind with round(float) [hint: use the compiler s type checking] 45 Exercise 3.11 Consider the fragment (a) Is the method min overloaded? (examine API of Math class) (b) With which method will the compiler bind this invocation of min? How could you prove the following: (c1) the invocation does not bind with min(long, long) (c2) the invocation does not bind with min(double, double) 46 [hint: use the compiler s type checking] 23
24 Checklist for next lecture (Oct 14, 2014) What you should be doing to prepare for what comes next " read section 3.2 A Development Walk-Through " review Ch 3 KC s 7-14 " do Ch 3 RQ s " do Ch 3 Ex s " last week s lab covered Lab Exercise L3.2 A Software Project (pp ), also listed as Ex 3.18 Have a Happy Thanksgiving Holiday 47 24
EECS1710. Announcements. epost updated, please check online Next Labtest: Thu Oct 23/Fri Oct 24. Next Term Test: Tue Oct 28.
EECS1710 Click to edit Master Week text 06, styles Lecture 11 Second level Third level Fourth level Fifth level Fall 2014! Tuesday, Oct 14, 2014 1 Announcements epost updated, please check online Next
More informationEECS1710. Checklist from last lecture (Sept 9, 2014) " get an EECS account (if you don t have it already) " read sections
EECS1710 Click to edit Master Week text 01, styles Lecture 02 Second level Third level Fourth level Fifth level Fall 2014! Thursday, Sept 11, 2014 1 Checklist from last lecture (Sept 9, 2014) " get an
More informationWhat we are reinforcing with the exercises this class
CSE1710 Click to edit Master Week text 01, styles Lecture 02 Second level Third level Fourth level Fifth level Fall 2013 Thursday, Sept 12, 2013 1 Checklist What we are reinforcing with the exercises this
More informationChecklist (for Today) What we are reinforcing with the exercises this class. recognizing the various different arithmetic operators (in situ)
CSE1710 Click to edit Master Week text 03, styles Lecture 06 Second level Third level Fourth level Fifth level Fall 2013 Thursday, Sept 26, 2013 1 Checklist (for Today) What we are reinforcing with the
More informationEECS168 Exam 3 Review
EECS168 Exam 3 Review Exam 3 Time: 2pm-2:50pm Monday Nov 5 Closed book, closed notes. Calculators or other electronic devices are not permitted or required. If you are unable to attend an exam for any
More informationA Foundation for Programming
2.1 Functions A Foundation for Programming any program you might want to write objects functions and modules build bigger programs and reuse code graphics, sound, and image I/O arrays conditionals and
More informationObject Oriented Programming and Design in Java. Session 2 Instructor: Bert Huang
Object Oriented Programming and Design in Java Session 2 Instructor: Bert Huang Announcements TA: Yipeng Huang, yh2315, Mon 4-6 OH on MICE clarification Next Monday's class canceled for Distinguished Lecture:
More informationIntroduction to Programming Using Java (98-388)
Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;
More informationCSE1720. General Info Continuation of Chapter 9 Read Chapter 10 for next week. Second level Third level Fourth level Fifth level
CSE1720 Click to edit Master Week text 08, styles Lecture 13 Second level Third level Fourth level Fifth level Winter 2014! Thursday, Feb 27, 2014 1 General Info Continuation of Chapter 9 Read Chapter
More informationCS 251 Intermediate Programming Methods and Classes
CS 251 Intermediate Programming Methods and Classes Brooke Chenoweth University of New Mexico Fall 2018 Methods An operation that can be performed on an object Has return type and parameters Method with
More informationECE 122. Engineering Problem Solving with Java
ECE 122 Engineering Problem Solving with Java Lecture 5 Anatomy of a Class Outline Problem: How do I build and use a class? Need to understand constructors A few more tools to add to our toolbox Formatting
More informationCSE Lecture 24 Review and Recap. High-Level Overview of the Course!! L1-7: I. Programming Basics!
CSE 1710 Lecture 24 Review and Recap High-Level Overview of the Course L1-7: I. Programming Basics Ch1, 2, 5, sec 3.2.4 (JBA) L8, L9: II. Working with Images APIs + Classes L10: Midterm L11-14: III. Object
More informationFunctions. x y z. f (x, y, z) Take in input arguments (zero or more) Perform some computation - May have side-effects (such as drawing)
2.1 Functions Functions Take in input arguments (zero or more) Perform some computation - May have side-effects (such as drawing) Return one output value Input Arguments x y z f Return Value f (x, y, z)
More informationLecture 2. COMP1406/1006 (the Java course) Fall M. Jason Hinek Carleton University
Lecture 2 COMP1406/1006 (the Java course) Fall 2013 M. Jason Hinek Carleton University today s agenda a quick look back (last Thursday) assignment 0 is posted and is due this Friday at 2pm Java compiling
More informationReviewing for the Midterm Covers chapters 1 to 5, 7 to 9. Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013
Reviewing for the Midterm Covers chapters 1 to 5, 7 to 9 Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013 2 Things to Review Review the Class Slides: Key Things to Take Away Do you understand
More informationAnnouncement. Agenda 7/31/2008. Polymorphism, Dynamic Binding and Interface. The class will continue on Tuesday, 12 th August
Polymorphism, Dynamic Binding and Interface 2 4 pm Thursday 7/31/2008 @JD2211 1 Announcement Next week is off The class will continue on Tuesday, 12 th August 2 Agenda Review Inheritance Abstract Array
More informationCS 251 Intermediate Programming Methods and More
CS 251 Intermediate Programming Methods and More Brooke Chenoweth University of New Mexico Spring 2018 Methods An operation that can be performed on an object Has return type and parameters Method with
More informationAll classes in a package can be imported by using only one import statement. If the postcondition of a method is not met, blame its implementer
Java By Abstraction ANSWERS O ES-A GROUP - A For each question, give +0.5 if correct, -0.5 if wrong, and 0 if blank. If the overall total is negative, record it (on the test's cover sheet)
More informationLecture #6-7 Methods
Lecture #6-7 s 1. a. group of statements designed to perform a specific function b. may be reused many times i. in a particular program or ii. in multiple programs 2. Examples from the Java Library a.
More informationAnatomy of a Class Encapsulation Anatomy of a Method
Writing Classes Writing Classes We've been using predefined classes. Now we will learn to write our own classes to define objects Chapter 4 focuses on: class definitions instance data encapsulation and
More informationObject Class. EX: LightSwitch Class. Basic Class Concepts: Parts. CS257 Computer Science II Kevin Sahr, PhD. Lecture 5: Writing Object Classes
1 CS257 Computer Science II Kevin Sahr, PhD Lecture 5: Writing Object Classes Object Class 2 objects are the basic building blocks of programs in Object Oriented Programming (OOP) languages objects consist
More informationFall 2017 CISC124 9/16/2017
CISC124 Labs start this week in JEFF 155: Meet your TA. Check out the course web site, if you have not already done so. Watch lecture videos if you need to review anything we have already done. Problems
More informationIntroduction Basic elements of Java
Software and Programming I Introduction Basic elements of Java Roman Kontchakov / Carsten Fuhs Birkbeck, University of London Module Information Time: Thursdays in the Spring term Lectures: MAL B04: 2
More informationCS 335 Java Programming Controls. Fall 2007
CS 335 Java Programming Controls Fall 2007 Java Control Structures Selection: If, If/Else, Switch Repetition (looping): While, For, Do/While Assignment: Expressions, increment/decrement Java Reserved Words
More informationCSC207 Week 2. Larry Zhang
CSC207 Week 2 Larry Zhang 1 Today s Outline Finish up non-oo examples, Array, HashMap OO programming Unit Test: JUnit (if time permits) Javadoc (if time permits) 2 Recap Java code is compiled into bytecode
More informationZheng-Liang Lu Java Programming 45 / 79
1 class Lecture2 { 2 3 "Elementray Programming" 4 5 } 6 7 / References 8 [1] Ch. 2 in YDL 9 [2] Ch. 2 and 3 in Sharan 10 [3] Ch. 2 in HS 11 / Zheng-Liang Lu Java Programming 45 / 79 Example Given a radius
More informationCSE115 / CSE503 Introduction to Computer Science I. Dr. Carl Alphonce 343 Davis Hall Office hours:
CSE115 / CSE503 Introduction to Computer Science I Dr. Carl Alphonce 343 Davis Hall alphonce@buffalo.edu Office hours: Thursday 12:00 PM 2:00 PM Friday 8:30 AM 10:30 AM OR request appointment via e-mail
More informationLab5. Wooseok Kim
Lab5 Wooseok Kim wkim3@albany.edu www.cs.albany.edu/~wooseok/201 Question Answer Points 1 A or B 8 2 A 8 3 D 8 4 20 5 for class 10 for main 5 points for output 5 D or E 8 6 B 8 7 1 15 8 D 8 9 C 8 10 B
More informationCOP 3330 Final Exam Review
COP 3330 Final Exam Review I. The Basics (Chapters 2, 5, 6) a. comments b. identifiers, reserved words c. white space d. compilers vs. interpreters e. syntax, semantics f. errors i. syntax ii. run-time
More informationFull file at
Java Programming: From Problem Analysis to Program Design, 3 rd Edition 2-1 Chapter 2 Basic Elements of Java At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class
More informationLesson:9 Working with Array and String
Introduction to Array: Lesson:9 Working with Array and String An Array is a variable representing a collection of homogeneous type of elements. Arrays are useful to represent vector, matrix and other multi-dimensional
More informationCS1004: Intro to CS in Java, Spring 2005
CS1004: Intro to CS in Java, Spring 2005 Lecture #23: OO Design, cont d. Janak J Parekh janak@cs.columbia.edu Administrivia HW#5 due Tuesday And if you re cheating on (or letting others see your) HW#5
More informationEncapsulation. You can take one of two views of an object: internal - the structure of its data, the algorithms used by its methods
Encapsulation You can take one of two views of an object: internal - the structure of its data, the algorithms used by its methods external - the interaction of the object with other objects in the program
More informationPace University. Fundamental Concepts of CS121 1
Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction
More informationMidterms Save the Dates!
University of British Columbia CPSC 111, Intro to Computation Alan J. Hu Primitive Data Types Arithmetic Operators Readings Your textbook is Big Java (3rd Ed). This Week s Reading: Ch 2.1-2.5, Ch 4.1-4.2.
More informationObjectives for this class meeting. 1. Conduct review of core concepts concerning contracts and pre/post conditions
CSE1720 Click to edit Master Week text 01, styles Lecture 02 Second level Third level Fourth level Fifth level Winter 2015! Thursday, Jan 8, 2015 1 Objectives for this class meeting 1. Conduct review of
More informationCHAPTER 7 OBJECTS AND CLASSES
CHAPTER 7 OBJECTS AND CLASSES OBJECTIVES After completing Objects and Classes, you will be able to: Explain the use of classes in Java for representing structured data. Distinguish between objects and
More informationChapter 13 Abstract Classes and Interfaces
Chapter 13 Abstract Classes and Interfaces 1 Abstract Classes Abstraction is to extract common behaviors/properties into a higher level in the class hierarch so that they are shared (implemented) by subclasses
More informationCHAPTER 7 OBJECTS AND CLASSES
CHAPTER 7 OBJECTS AND CLASSES OBJECTIVES After completing Objects and Classes, you will be able to: Explain the use of classes in Java for representing structured data. Distinguish between objects and
More informationComputational Expression
Computational Expression Variables, Primitive Data Types, Expressions Janyl Jumadinova 28-30 January, 2019 Janyl Jumadinova Computational Expression 28-30 January, 2019 1 / 17 Variables Variable is a name
More informationlast time in cs recitations. computer commands. today s topics.
last time in cs1007... recitations. course objectives policies academic integrity resources WEB PAGE: http://www.columbia.edu/ cs1007 NOTE CHANGES IN ASSESSMENT 5 EXTRA CREDIT POINTS ADDED sign up for
More informationAn Introduction To Writing Your Own Classes CSC 123 Fall 2018 Howard Rosenthal
An Introduction To Writing Your Own Classes CSC 123 Fall 2018 Howard Rosenthal Lesson Goals Understand Object Oriented Programming The Syntax of Class Definitions Constructors this Object Oriented "Hello
More informationUsing APIs. Chapter 3. Outline Fields Overall Layout. Java By Abstraction Chapter 3. Field Summary static double PI
Outline Chapter 3 Using APIs 3.1 Anatomy of an API 3.1.1 Overall Layout 3.1.2 Fields 3.1.3 Methods 3.2 A Development Walkthrough 3.2.1 3.2.2 The Mortgage Application 3.2.3 Output Formatting 3.2.4 Relational
More informationLecture 7: Classes and Objects CS2301
Lecture 7: Classes and Objects NADA ALZAHRANI CS2301 1 What is OOP? Object-oriented programming (OOP) involves programming using objects. An object represents an entity in the real world that can be distinctly
More informationLecture 1: Overview of Java
Lecture 1: Overview of Java What is java? Developed by Sun Microsystems (James Gosling) A general-purpose object-oriented language Based on C/C++ Designed for easy Web/Internet applications Widespread
More informationIntroduction to Visual Basic and Visual C++ Introduction to Java. JDK Editions. Overview. Lesson 13. Overview
Introduction to Visual Basic and Visual C++ Introduction to Java Lesson 13 Overview I154-1-A A @ Peter Lo 2010 1 I154-1-A A @ Peter Lo 2010 2 Overview JDK Editions Before you can write and run the simple
More informationLecture 5: Methods CS2301
Lecture 5: Methods NADA ALZAHRANI CS2301 1 Opening Problem Find the sum of integers from 1 to 10, from 20 to 30, and from 35 to 45, respectively. 2 Solution public static int sum(int i1, int i2) { int
More informationWeiss Chapter 1 terminology (parenthesized numbers are page numbers)
Weiss Chapter 1 terminology (parenthesized numbers are page numbers) assignment operators In Java, used to alter the value of a variable. These operators include =, +=, -=, *=, and /=. (9) autoincrement
More informationCS 112 Programming 2. Lecture 10. Abstract Classes & Interfaces (1) Chapter 13 Abstract Classes and Interfaces
CS 112 Programming 2 Lecture 10 Abstract Classes & Interfaces (1) Chapter 13 Abstract Classes and Interfaces 2 1 Motivations We have learned how to write simple programs to create and display GUI components.
More informationProgramming Language Concepts: Lecture 2
Programming Language Concepts: Lecture 2 Madhavan Mukund Chennai Mathematical Institute madhavan@cmi.ac.in http://www.cmi.ac.in/~madhavan/courses/pl2011 PLC 2011, Lecture 2, 6 January 2011 Classes and
More informationCSC207 Week 3. Larry Zhang
CSC207 Week 3 Larry Zhang 1 Announcements Readings will be posted before the lecture Lab 1 marks available in your repo 1 point for creating the correct project. 1 point for creating the correct classes.
More informationIntroduction to Java
Introduction to Java Module 1: Getting started, Java Basics 22/01/2010 Prepared by Chris Panayiotou for EPL 233 1 Lab Objectives o Objective: Learn how to write, compile and execute HelloWorld.java Learn
More informationCOE318 Lecture Notes Week 3 (Week of Sept 17, 2012)
COE318 Lecture Notes: Week 3 1 of 8 COE318 Lecture Notes Week 3 (Week of Sept 17, 2012) Announcements Quiz (5% of total mark) on Wednesday, September 26, 2012. Covers weeks 1 3. This includes both the
More informationCOMP 202. More on OO. CONTENTS: static revisited this reference class dependencies method parameters variable scope method overloading
COMP 202 CONTENTS: static revisited this reference class dependencies method parameters variable scope method overloading More on OO COMP 202 Objects 3 1 Static member variables So far: Member variables
More informationJava Programming. MSc Induction Tutorials Stefan Stafrace PhD Student Department of Computing
Java Programming MSc Induction Tutorials 2011 Stefan Stafrace PhD Student Department of Computing s.stafrace@surrey.ac.uk 1 Tutorial Objectives This is an example based tutorial for students who want to
More informationTue Nov 11 & Thu Nov 13 : complete Ch 5 Thu Nov 13/Fri Nov 14 : lab exercises Ch 5. Tue Nov 18 : TERM TEST #3 (Ch.4,5)
CSE1710 Click to edit Master Week text 10, styles Lecture 18 Second level Third level Fourth level Fifth level Fall 2013! Tuesday, Nov 11, 2014 1 Overview Tue Nov 11 & Thu Nov 13 : complete Ch 5 Thu Nov
More informationCOE318 Lecture Notes Week 8 (Oct 24, 2011)
COE318 Software Systems Lecture Notes: Week 8 1 of 17 COE318 Lecture Notes Week 8 (Oct 24, 2011) Topics == vs..equals(...): A first look Casting Inheritance, interfaces, etc Introduction to Juni (unit
More informationCS 335 Lecture 02 Java Programming
1 CS 335 Lecture 02 Java Programming Programming in Java Define data Calculate using data Output result Java is object-oriented: Java program must: Merge data and functions into object Invoke functions
More informationBASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I
BASIC COMPUTATION x public static void main(string [] args) Fundamentals of Computer Science I Outline Using Eclipse Data Types Variables Primitive and Class Data Types Expressions Declaration Assignment
More informationCS171:Introduction to Computer Science II
CS171:Introduction to Computer Science II Department of Mathematics and Computer Science Li Xiong 9/7/2012 1 Announcement Introductory/Eclipse Lab, Friday, Sep 7, 2-3pm (today) Hw1 to be assigned Monday,
More informationGraphical Interface and Application (I3305) Semester: 1 Academic Year: 2017/2018 Dr Antoun Yaacoub
Lebanese University Faculty of Science Computer Science BS Degree Graphical Interface and Application (I3305) Semester: 1 Academic Year: 2017/2018 Dr Antoun Yaacoub 2 Crash Course in JAVA Classes A Java
More informationCS-202 Introduction to Object Oriented Programming
CS-202 Introduction to Object Oriented Programming California State University, Los Angeles Computer Science Department Lecture III Inheritance and Polymorphism Introduction to Inheritance Introduction
More informationIntroduction to Programming (Java) 4/12
Introduction to Programming (Java) 4/12 Michal Krátký Department of Computer Science Technical University of Ostrava Introduction to Programming (Java) 2008/2009 c 2006 2008 Michal Krátký Introduction
More informationJava How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.
Java How to Program, 10/e Education, Inc. All Rights Reserved. Each class you create becomes a new type that can be used to declare variables and create objects. You can declare new classes as needed;
More informationH212 Introduction to Software Systems Honors
Introduction to Software Systems Honors Lecture #04: Fall 2015 1/20 Office hours Monday, Wednesday: 10:15 am to 12:00 noon Tuesday, Thursday: 2:00 to 3:45 pm Office: Lindley Hall, Room 401C 2/20 Printing
More informationCSCI 355 LAB #2 Spring 2004
CSCI 355 LAB #2 Spring 2004 More Java Objectives: 1. To explore several Unix commands for displaying information about processes. 2. To explore some differences between Java and C++. 3. To write Java applications
More information12/22/11. Java How to Program, 9/e. public must be stored in a file that has the same name as the class and ends with the.java file-name extension.
Java How to Program, 9/e Education, Inc. All Rights Reserved. } Covered in this chapter Classes Objects Methods Parameters double primitive type } Create a new class (GradeBook) } Use it to create an object.
More informationCS110: PROGRAMMING LANGUAGE I
CS110: PROGRAMMING LANGUAGE I Computer Science Department Lecture 8: Methods Lecture Contents: 2 Introduction Program modules in java Defining Methods Calling Methods Scope of local variables Passing Parameters
More informationAnnouncements/Follow-ups
Announcements/Follow-ups Midterm #2 Friday Everything up to and including today Review section tomorrow Study set # 6 online answers posted later today P5 due next Tuesday A good way to study Style omit
More informationTable of Contents Date(s) Title/Topic Page #s. Chapter 4: Writing Classes 4.1 Objects Revisited
Table of Contents Date(s) Title/Topic Page #s 11/6 Chapter 3 Reflection/Corrections 56 Chapter 4: Writing Classes 4.1 Objects Revisited 57 58-59 look over your Ch 3 Tests and write down comments/ reflections/corrections
More informationAggregation. Introduction to Computer Science I. Overview (1): Overview (2): CSE 1020 Summer Bill Kapralos. Bill Kapralos.
Aggregation Thursday, July 6 2006 CSE 1020, Summer 2006, Overview (1): Before We Begin Some administrative details Some questions to consider Aggregation Overview / Introduction The aggregate s constructor
More informationThe next three class meetings will focus on Chapter 6 concepts. There will be a labtest on Chapter 5 concepts on Thurs Nov 20/Fri Nov 21.
CSE1710 Click to edit Master Week text 11, styles Lecture 21 Second level Third level Fourth level Fifth level Fall 2014! Thurs, Nov 20, 2014 1 Big Picture The next three class meetings will focus on Chapter
More informationChapter 4 Defining Classes I
Chapter 4 Defining Classes I This chapter introduces the idea that students can create their own classes and therefore their own objects. Introduced is the idea of methods and instance variables as the
More informationCS 251 Intermediate Programming Java Basics
CS 251 Intermediate Programming Java Basics Brooke Chenoweth University of New Mexico Spring 2018 Prerequisites These are the topics that I assume that you have already seen: Variables Boolean expressions
More informationCS321 Languages and Compiler Design I. Winter 2012 Lecture 2
CS321 Languages and Compiler Design I Winter 2012 Lecture 2 1 A (RE-)INTRODUCTION TO JAVA FOR C++/C PROGRAMMERS Why Java? Developed by Sun Microsystems (now Oracle) beginning in 1995. Conceived as a better,
More informationChapter 2: Data and Expressions
Chapter 2: Data and Expressions CS 121 Department of Computer Science College of Engineering Boise State University January 15, 2015 Chapter 2: Data and Expressions CS 121 1 / 1 Chapter 2 Part 1: Data
More informationPython Boot Camp. Day 3
Python Boot Camp Day 3 Agenda 1. Review Day 2 Exercises 2.Getting input from the user, Interview Lab 3.Scopes 4.Conditionals, Mood Ring Lab 5.Recursion, Recursion Lab Day 2 Exercises Think Python Ch. 3
More information1 Shyam sir JAVA Notes
1 Shyam sir JAVA Notes 1. What is the most important feature of Java? Java is a platform independent language. 2. What do you mean by platform independence? Platform independence means that we can write
More informationLab5. Wooseok Kim
Lab5 Wooseok Kim wkim3@albany.edu www.cs.albany.edu/~wooseok/201 Question Answer Points 1 A 8 2 A 8 3 E 8 4 D 8 5 20 5 for class 10 for main 5 points for output 6 A 8 7 B 8 8 0 15 9 D 8 10 B 8 Question
More informationInheritance and Interfaces
Inheritance and Interfaces Object Orientated Programming in Java Benjamin Kenwright Outline Review What is Inheritance? Why we need Inheritance? Syntax, Formatting,.. What is an Interface? Today s Practical
More informationIntroduction Course Information Object Oriented Concepts Operators & Control Statements Assignment 3. CS Java. Introduction to Java
CS 190 - Java Introduction to Java Andy Mroczkowski uamroczk@cs.drexel.edu Department of Computer Science Drexel University January 28, 2008 / Lecture 2 Introduction Course Information Basic Course Information
More informationCS 110 Practice Final Exam originally from Winter, Instructions: closed books, closed notes, open minds, 3 hour time limit.
Name CS 110 Practice Final Exam originally from Winter, 2003 Instructions: closed books, closed notes, open minds, 3 hour time limit. There are 4 sections for a total of 49 points. Part I: Basic Concepts,
More informationhttps://asd-pa.perfplusk12.com/admin/admin_curric_maps_display.aspx?m=5507&c=618&mo=18917&t=191&sy=2012&bl...
Page 1 of 13 Units: - All - Teacher: ProgIIIJavaI, CORE Course: ProgIIIJavaI Year: 2012-13 Intro to Java How is data stored by a computer system? What does a compiler do? What are the advantages of using
More informationF1 A Java program. Ch 1 in PPIJ. Introduction to the course. The computer and its workings The algorithm concept
F1 A Java program Ch 1 in PPIJ Introduction to the course The computer and its workings The algorithm concept The structure of a Java program Classes and methods Variables Program statements Comments Naming
More informationPeerWise Study. Midterms Save the Dates! University of British Columbia CPSC 111, Intro to Computation Alan J. Hu. Constants Using Classes and Objects
University of British Columbia CPSC 111, Intro to Computation Alan J. Hu Constants Using Classes and Objects Lecture 4 Some slides borrowed from Kurt Eiselt, Tamara Munzner, and Steve Wolfman. Some learning
More informationInf1-OOP. Textbooks. Who and What. Organizational Issues. Why Java? Course Overview. Hello, World! in Java. Ewan Klein, Perdita Stevens
Organizational Issues Inf1-OOP Course Overview Ewan Klein, Perdita Stevens School of Informatics January 12, 2013 Why Java? Hello, World! in Java Built-in Types Integers Floating-Point Numbers Type Conversion
More informationObject interactions Lecture 6
Object interactions Lecture 6 Waterford Institute of Technology January 29, 2016 John Fitzgerald Waterford Institute of Technology, Object interactions Lecture 6 1/1 Presentation outline Estimated duration
More informationIntroduction to Classes and Objects. David Greenstein Monta Vista High School
Introduction to Classes and Objects David Greenstein Monta Vista High School Client Class A client class is one that constructs and uses objects of another class. B is a client of A public class A private
More informationCSC207H: Software Design. Java + OOP. CSC207 Winter 2018
Java + OOP CSC207 Winter 2018 1 Why OOP? Modularity: code can be written and maintained separately, and easily passed around the system Information-hiding: internal representation hidden from the outside
More informationMcGill University School of Computer Science COMP-202A Introduction to Computing 1
McGill University School of Computer Science COMP-202A Introduction to Computing 1 Midterm Exam Thursday, October 26, 2006, 18:00-20:00 (6:00 8:00 PM) Instructors: Mathieu Petitpas, Shah Asaduzzaman, Sherif
More informationThe Sun s Java Certification and its Possible Role in the Joint Teaching Material
The Sun s Java Certification and its Possible Role in the Joint Teaching Material Nataša Ibrajter Faculty of Science Department of Mathematics and Informatics Novi Sad 1 Contents Kinds of Sun Certified
More informationTwo Types of Types. Primitive Types in Java. Using Primitive Variables. Class #07: Java Primitives. Integer types.
Class #07: Java Primitives Software Design I (CS 120): M. Allen, 13 Sep. 2018 Two Types of Types So far, we have mainly been dealing with objects, like DrawingGizmo, Window, Triangle, that are: 1. Specified
More informationCS 11 java track: lecture 1
CS 11 java track: lecture 1 Administrivia need a CS cluster account http://www.cs.caltech.edu/ cgi-bin/sysadmin/account_request.cgi need to know UNIX www.its.caltech.edu/its/facilities/labsclusters/ unix/unixtutorial.shtml
More informationAgenda CS121/IS223. Reminder. Object Declaration, Creation, Assignment. What is Going On? Variables in Java
CS121/IS223 Object Reference Variables Dr Olly Gotel ogotel@pace.edu http://csis.pace.edu/~ogotel Having problems? -- Come see me or call me in my office hours -- Use the CSIS programming tutors Agenda
More informationCSE P 501 Compilers. Java Implementation JVMs, JITs &c Hal Perkins Winter /11/ Hal Perkins & UW CSE V-1
CSE P 501 Compilers Java Implementation JVMs, JITs &c Hal Perkins Winter 2008 3/11/2008 2002-08 Hal Perkins & UW CSE V-1 Agenda Java virtual machine architecture.class files Class loading Execution engines
More informationProgramming for Mobile Computing
1/57 Programming for Mobile Computing EECS 1022 moodle.yorku.ca Labs 2/57 For the things we have to learn before we can do them, we learn by doing them. Aristotle During the labs, carefully read the instructions,
More informationThe next three class meetings will focus on Chapter 6 concepts. There will be a labtest on Chapter 5 concepts on Thurs Nov 28/Fri Nov 29.
CSE1710 Click to edit Master Week text 12, styles Lecture 22 Second level Third level Fourth level Fifth level Fall 2013 Tuesday, Nov 26, 2013 1 2 Big Picture The next three class meetings will focus on
More information11/19/2014. Objects. Chapter 4: Writing Classes. Classes. Writing Classes. Java Software Solutions for AP* Computer Science A 2nd Edition
Chapter 4: Writing Classes Objects An object has: Presentation slides for state - descriptive characteristics Java Software Solutions for AP* Computer Science A 2nd Edition by John Lewis, William Loftus,
More informationTwo s Complement Review. Two s Complement Review. Agenda. Agenda 6/21/2011
Two s Complement Review CS 61C: Great Ideas in Computer Architecture (Machine Structures) Introduction to C (Part I) Instructor: Michael Greenbaum http://inst.eecs.berkeley.edu/~cs61c/su11 Suppose we had
More informationOutline. Object Oriented Programming. Course goals. Staff. Course resources. Assignments. Course organization Introduction Java overview Autumn 2003
Outline Object Oriented Programming Autumn 2003 2 Course goals Software design vs hacking Abstractions vs language (syntax) Java used to illustrate concepts NOT a course about Java Prerequisites knowledge
More information