CS100J. Lecture 2, 24 September Objects & classes

Slides:



Advertisements
Similar presentations
1 For more info: CS Sep 2008 In 1968, the Defense Department hired Bolt Beranek and Newman (BBN) of Boston to.
Advertisements

1 CS100J. Lecture 2, 25 January 2007 Today’s topic: Objects and classes Reading for this lecture: Section 1.3. It’s most important that you study this.
CS100J Today’s topic: Objects and classes Reading for this lecture: Section 1.3 PLive: Activities 3-3.1, 3-3.2, (not 3-3.3), 3-4.1, Summary.
1 CS100J 1 February Customizing a class & testing Quote for the day: There is no reason anyone would want a computer in their home. - -Ken Olson,
What Data Do We Have? Sections 2.2, 2.5 August 29, 2008.
1 Review of classes and subclasses M fast through this material, since by now all have seen it in CS100 or the Java bootcamp First packages Then classes.
Getting Started in Blackboard. You will need… A web browser, preferably Internet Explorer, version 4.0 or higher An account and the knowledge of.
CS100J 11 September 2003 Course Management System for CS100J is now populated with students who were pre-registered. Look at course web page to see how.
0 CS100J September 2007 CS100J: 12 weeks programming using Java, 2 using Matlab. David Gries. CS100M: 7 weeks of Matlab and 7 of Java. Daisy Fan. CS100H:
CS100J CS100M is in Kimball Bll. Course Management System for CS100J is now populated with students who were pre-registered. Look at course web page to.
1 CS100J 30 January 2007 The class definition Course Management System (CMS) for CS100J is populated with students who were pre-registered. Look at course.
1 CS100J 05 February 2005 Today’s topic: Customizing a class (continued) Quiz 1 is today Quiz 2 is next Tuesday Quote for the day: There is no reason anyone.
Applets, HTML and GUI’s Recitation – 04/11/2008 CS 180 Department of Computer Science, Purdue University.
1 CS1130 Spring 2011: David Gries & Walker White Transition to Object-Oriented Programming Assumes programming knowledge in a language like Matlab, C,
1 CS1110 Fall 2011: David Gries & Steve Marschner CS1112: Matlab No prior programming experience One semester of calculus Math- & engineering- type problems.
CS1101: Programming Methodology Aaron Tan.
Quote for the day: Computational thinking: a fundamental skill for everyone … [It] is … choosing an appropriate representation for a problem or modeling.
Inti Online Login Page (Lecturer/Student/Administrator View)
CS105 Lab 1 – Introduction Section: ??? TA: ??? ??? Announcements CITES Accounts Compass Netfiles Other Administrative Information CS105 Fall
1 CS1110 Fall 2010 Instructors: David Gries & Lillian Lee CS1112: Matlab No prior programming experience One semester of calculus Math- & engineering-
Getting Started with Moodle Getting Started Logging In Entering Your Address Viewing a Course Navigating Your Course’s Homepage Personalizing Your.
Quote for the day: Computational thinking: a fundamental skill for everyone … [It] is … choosing an appropriate representation for a problem or modeling.
EleUM (Electronic Learning Environment University Maastricht)
Accessing & Submitting Homework myitlab Microsoft Office Professional 1 CSP 1203.
1 CS Sept 2010 Customizing a class Quote for the day: I have traveled the length and breadth of this country and talked with the best people, and.
CS100J 09 September 2003 Course Management System for CS100J is now populated with students who were pre-registered. Look at course web page to see how.
1 CS1110. Lecture 1, 31 Aug Types, expressions, variables, assignment statements Can’t install DrJava and running a Microsoft operating system? Contact.
CS100J Spring 2006 CS100J: 11 weeks of programming using Java and 2 weeks using Matlab. David Gries is teaching CS100J. Graeme Bailey is teaching a special.
0 Teaching Java —with OO first David Gries Computer Science Cornell University Ithaca, NY
CS/ENGRD 2110 SPRING 2012 Lecture 2: Objects and classes in Java 1.
CIS101 Introduction to Computing Week 01. Agenda What is CIS101? Class Introductions Using your Pace Introduction to Blackboard and online learning.
1 CS1110. Lecture 1, 31 Aug Types, expressions, variables, assignment statements Summary of lectures : On course webpage, click on “Lecture summaries”.
1 CS1110 lecture 4 9 Sept. Customizing a class & testing Classes: fields; getter & setter methods. Secs (p. 45) & 3.1 (pp. 105–110 only) Constructors.
1 CS1100 Fall Instructor: David Gries CS100M: Matlab No prior programming experience One semester of calculus Math & engineering type problems CS100J:
1 CS1110 Fall Instructors: David Gries & Lillian Lee CS1112: Matlab No prior programming experience One semester of calculus Math- & engineering-
January 2006Colby College ITS Setting Up Course Pages.
1 CS100J 08 September 2005 Today’s topic: Customizing a class (continued) Quote for the day: There is no reason anyone would want a computer in their home.
1 CS September 2008 Discussion of Methods: Executing method calls.If-statements. The return statement in a function. Local variables. For this and.
1 CS1110. Lecture 2, 28 Jan Objects & classes PLive: Activities 3-3.1, 3-3.2, (not 3-3.3), 3-4.1, Summary of lectures: On course page,
CS/ENGRD 2110 SPRING 2016 Lecture 2: Objects and classes in Java 1.
1 CS1110 Thursday, 10 Feb 2011 Discussion of Methods: Executing method calls. If-statements. The return statement in a function. Local variables. For this.
1 CS100J Spring Instructor: David Gries CS100M: Matlab No prior programming experience One semester of calculus Math & engineering type problems.
1 CS Sept 2010 Customizing a class Quote for the day: I have traveled the length and breadth of this country and talked with the best people, and.
Introduction to BearQuest 1- 1 Getting the training you need1-2 Logging on and Getting Access1-3 Starting your Request1-6 Basic Screen Navigation1-8 Course.
1 CS Sept Customizing a class & testing Quote for the day: There is no reason anyone would want a computer in their home. - -Ken Olson, founder.
CS/ENGRD 2110 Fall 2017 Lecture 2: Objects and classes in Java
Getting Started with.
CS Feb 2010 Customizing a class
Content Programming Overview The JVM A brief look at Structure
CS1110 Spring Instructor: David Gries
NetApp Online Ordering User Tutorial
CS/ENGRD 2110 Spring 2018 Lecture 2: Objects and classes in Java
GUIS: Graphical User Interfaces
CS 1110 Please do this now. Draw three variables on a piece of paper as shown to the right: b 4 c 7 d false Below is a “program” consisting of 3 assignment.
Sit next to someone. Today, we do some work in pairs.
CS100J 06 September 2005 The class definition
CS/ENGRD 2110 Fall 2018 Lecture 2: Objects and classes in Java
What you will need to Register
Sit next to someone. Today, we do some work in pairs.
Getting Started with:.
CS/ENGRD 2110 Spring 2019 Lecture 2: Objects and classes in Java
A programming language
Click Student. Go to Click Student.
CSCI N207 Data Analysis Using Spreadsheet
CS100J CS100M is in Kimball Bll.
--Valid address --Course ID --Access Code or
Click Student. Go to Click Student.
CS/ENGRD 2110 Spring 2019 Lecture 2: Objects and classes in Java
Course Selection Instructions
CS Feb 2011 Customizing a class
Presentation transcript:

CS100J. Lecture 2, 24 September 2008. Objects & classes Reading for this lecture: Section 1.3. It’s most important that you study this section over the weekend and practice what is taught using DrJava. PLive: Activities 3-3.1, 3-3.2, 3-3.4 (not 3-3.3), 3-4.1, 3-4.2. Summary of lectures: On course page, click on “Handouts” and then “Outline of lectures held so far”. We will hand out assignment 1 next week. No need to look at it yet! Quote for the day: Computers in the future may weigh no more than 1.5 tons. --Popular Mechanics, forecasting the relentless march of science, 1949

AEWs Sign up for the 1-credit AEW sections for CS100J. About CMS: Course Management System. Use to maintain grades, handle submitted assignments, post grades, handle regrades, etc. Developed by the CS Department. URL: http://cms3.csuglab.cornell.edu Click on “Secure extended login”. You will be asked for your cornell netid and password. After entering it, you will either be in the CMS and see the course description or you will see on the right something like this: CMS Overview My Courses Com S 100J (student) If it lists CS100J, click on it. If it doesn’t, email Amy Fish at amyfish@cs.cornell.edu and ask her to register you in the CMS for CS100J. AEWs Sign up for the 1-credit AEW sections for CS100J. Two hrs per week. Nothing else. Not remedial.

Two aspects of a programming language structural objects classes methods inheritance procedural assignment, return, if-statement iteration (loops) recursion miscellaneous GUIs exception handling Testing/debugging Parts to this course • Organization – structure • Procedural —commands to do something Example: Recipe book Organization: Several options; here is one: Appetizers list of recipes Beverages list of recipes Soups list of recipes … Procedural: Recipe: sequence of instructions to carry out

A class is a file-drawer A class is a file-drawer. Contents: manila folders, each containing the same kind of information class name c1 Patient name B. Clinton address New York owes $250.00 manila folder: an object or instance of the class

A class is a file-drawer A class is a file-drawer. Contents: manila folders, each containing the same kind of information Name on tab (c1): anything you want, as long as it is unique c1 Patient name B. Clinton address New York owes $250.00 name, address, owes: variables, called fields of the folder

A class is a file-drawer A class is a file-drawer. Contents: manila folders, each containing the same kind of information c1 Patient name B. Clinton address New York owes $250.00 Instructions to be carried out by different people: change the name, get the name, bill the patient, receive money from patient, insert teeth xrays into the folder, …

A class is a file-drawer A class is a file-drawer. Contents: manila folders, each containing the same kind of information c1 Patient name B. Clinton address New York owes $250.00 getName() deposit(double d) Instructions to be carried out by different people: methods. getName is a function; it returns a value. deposit is a procedure; it does some task, doesn’t return value

c1 Patient name B. Clinton address New York owes $250.00 c1 pat variable contains the name of the folder getName() deposit(double d) pat.getName() function call. Its value is “B. Clinton” pat.deposit(250.0); procedure call. Subtract 250.0 from field owes.

c1 Patient name B. Clinton address New York owes $250.00 c1 pat variable contains the name of the folder getName() deposit(double d) new Patient() An expression: create a new folder (put it in file-drawer Patient) and give as the value of the expression the name of the folder. pat= new Patient(); A statement: evaluate newPatient() and store its value (the name of the new folder) in variable pat.

a0 An object (manila folder) of class Javax.swing.Jframe is associated with a window on your computer monitor. It has (among others) these functions: getHeight() get Width() getX() getY() getTitle() isResizeable() and these procedures: show() hide() setTitle() setSize(int, int) setLocation(int, int) setResizable(boolean) j variable contains name of the folder We will demo the use of each of these methods In groups of 2, draw an object (manila folder) of this class, and put the name a0 on its tab.

j= new javax.swing.JFrame(); j.show(); … a0 j Expression new JFrame() Creates new folder and put in file drawer JFrame. Statement jf= new JFrame(); Create new folder, as above, and place its name in variable jf (jf should have first been declared). Thereafter, use jf . method-name ( arguments, if any ) to call methods of folder (object) jf. variable contains the name of the folder • Read section 1.3. • Practice what we did in class in DrJava. • Try the self-review exercises on page 40.

package java.io classes having to do with input/output package: A collection of classes that are placed in the same directory on your hard drive. Think of it as a room that contains file cabinets with one drawer for each class. package java.io classes having to do with input/output package java.net classes having to do with the internet package java.awt classes having to do with making GUIs package javax.swing newer classes having to do with GUIs ============================================= To reference class JFrame in package javax.swing, use: javax.swing.JFrame Instead: import javax.swing.*; Then use simply JFrame

The expression new JFrame() creates a new folder that goes in file drawer JFrame. The statement jf= new JFrame(); creates a new folder and places its name in variable jf (jf should have first been declared). Thereafter, use jf . method-name ( arguments, if any ) to call methods of folder (object) jf. • Read section 1.3. • Practice what you saw in class in DrJava. • Try the self-review exercises on page 40.