Declaring Variables – Mod 4

Slides:



Advertisements
Similar presentations
IT 325 OPERATING SYSTEM C programming language. Why use C instead of Java Intermediate-level language:  Low-level features like bit operations  High-level.
Advertisements

ManipulatingPictures-Mod6-part21 Manipulating Pictures, Arrays, and Loops part 2 Barb Ericson Georgia Institute of Technology.
10-Jun-15 Just Enough Java. Variables A variable is a “box” that holds data Every variable has a name Examples: name, age, address, isMarried Variables.
Georgia Institute of Technology Introduction to Java part 2 Barb Ericson Georgia Institute of Technology May 2006.
04-Intro-Object-Oriented-In-Java1 Barb Ericson Georgia Institute of Technology Sept 2009 Introduction to Object-Oriented Programming in Java.
01- Intro-Java-part1 1 Introduction to Java, and DrJava Barb Ericson Georgia Institute of Technology June 2008.
Georgia Institute of Technology Introduction to Java, and DrJava Barb Ericson Georgia Institute of Technology Aug 2005.
Georgia Institute of Technology Barb Ericson Georgia Institute of Technology May 2006 Teaching Java using Turtles part 1.
CPSC1301 Computer Science 1 Chapter 11 Creating Classes part 1.
CreatingClasses-part11 Creating Classes part 1 Barb Ericson Georgia Institute of Technology Dec 2009.
Methods in Java CSC1401. Overview In this session, we are going to see how to create class-level methods in Java.
Georgia Institute of Technology Creating Classes part 1 Barb Ericson Georgia Institute of Technology Oct 2005.
Georgia Institute of Technology Barb Ericson Georgia Institute of Technology May 2006 Teaching Java using Turtles part 2.
Georgia Institute of Technology Declaring Variables – Mod 4 Barb Ericson Georgia Institute of Technology August 2005.
Georgia Institute of Technology Introduction to Java, and DrJava Barb Ericson Georgia Institute of Technology June 2005.
Java Introduction part 2 CSC1401. Overview In this session, we are going to examine some of the instructions from the previous class in more detail.
Georgia Institute of Technology Manipulating Pictures, Arrays, and Loops Barb Ericson Georgia Institute of Technology August 2005.
Georgia Institute of Technology Declaring Variables – Mod 4 Barb Ericson Georgia Institute of Technology August 2005.
Data Tonga Institute of Higher Education. Variables Programs need to remember values.  Example: A program that keeps track of sales needs to remember.
CreatingClasses-SlideShow-part31 Creating Classes part 3 Barb Ericson Georgia Institute of Technology Dec 2009.
Georgia Institute of Technology Creating Classes part 2 Barb Ericson Georgia Institute of Technology June 2006.
Memory Management in Java Computer Science 3 Gerb Objective: Understand references to composite types in Java.
Georgia Institute of Technology Barb Ericson Georgia Institute of Technology Aug 2006 Introduction to Object-Oriented Programming in Alice and Java.
Georgia Institute of Technology More on Creating Classes part 3 Barb Ericson Georgia Institute of Technology Nov 2005.
Georgia Institute of Technology Workshop for Programming And Systems Management Teachers Chapter 3 Introduction to Media Computation, Java, and DrJava.
04-ManipulatingPictures-part21 Manipulating Pictures, Arrays, and Loops part 2 Barb Ericson Georgia Institute of Technology June 2008.
Georgia Institute of Technology Barb Ericson Georgia Institute of Technology Sept 2006 Introduction to Object-Oriented Programming in Alice and Java.
Georgia Institute of Technology Introduction to Java, and DrJava part 1 Dr Usman Saeed Assistant Professor Faculty of Computing and Information Technology.
Georgia Institute of Technology Dr Usman Saeed Assistant Professor Faculty of Computing and Information Technology North Jeddah Branch King Abdulaziz University.
Georgia Institute of Technology More on Creating Classes Barb Ericson Georgia Institute of Technology June 2006.
Sections Basic Data Structures. 1.5 Data Structures The way you view and structure the data that your programs manipulate greatly influences your.
Lecture 3: More Java Basics Michael Hsu CSULA. Recall From Lecture Two  Write a basic program in Java  The process of writing, compiling, and running.
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Manipulating Pictures, Arrays, and Loops part 2
Introduction to Java part 2
Manipulating Pictures, Arrays, and Loops part 3
Introduction to Media Computation
Multiple variables can be created in one declaration
Data types and variables
Creating and Modifying Text part 2
Barb Ericson Georgia Institute of Technology Dec 2009
Introduction to Object-Oriented Programming in Alice and Java
Introduction to Object-Oriented Programming in Java
Teaching Java using Turtles part 1
Manipulating Pictures, Arrays, and Loops part 2
String Objects & its Methods
Barb Ericson Georgia Institute of Technology August 2005
Introduction to Java part 2
Introduction to Java, and DrJava part 1
Declaring Variables – Mod 4
Teaching Java using Turtles part 2
Introduction to Media Computation
Teaching Java using Turtles part 3
Declaring Variables – Mod 4
Barb Ericson Georgia Institute of Technology Oct 2005
Introduction to Object-Oriented Programming in Alice and Java
Manipulating Pictures, Arrays, and Loops
Introduction to Java, and DrJava
Barb Ericson Georgia Institute of Technology June 2005
Barb Ericson Georgia Institute of Technology May 2006
Introduction to Java part 2
More on Creating Classes
Manipulating Pictures, Arrays, and Loops
Introduction to Java, and DrJava
Introduction to Java, and DrJava part 1
Barb Ericson Georgia Institute of Technology Oct 2005
Just Enough Java 17-May-19.
Teaching Java using Turtles
Teaching Java using Turtles part 2
The beginning of media computation Followed by a demo
Presentation transcript:

Declaring Variables – Mod 4 Barb Ericson Georgia Institute of Technology August 2005 Georgia Institute of Technology

Georgia Institute of Technology Learning Goals Understand at a conceptual level Declaring variables: what is allowed and what isn’t When variables can be garbage collected How to change the value of a variable The difference between primitive and object variables Georgia Institute of Technology

Working with Variables You must declare a variable before you can use it Declare a variable once and only once You will get an error if you declare it more than once You can reuse variables That you have declared Georgia Institute of Technology

Georgia Institute of Technology Declaring Variables To declare a variable Specify the type and a name String name; World world1; Turtle turtle1; int x; You can also assign a value to the variable when you declare it String fullName = “Susan Dorda”; World world1 = new World(); Turtle turtle1 = new Turtle(world1); int x = 0; Georgia Institute of Technology

Object and Primitive Variables Primitive variables allocate space based on their size The contents of the space is set to the variable’s value Object type variables cause space allocation for a reference to an object The contents of the space is a way to calculate the address of the object Or null if it isn’t referring to an object yet. int a = 3 a 3 String str =“Hi”; str reference See http://www.javaranch.com/campfire/StoryCups.jsp for a discussion of the sizes of primitives and the differences between primitive variables and object variables. “Hi” Georgia Institute of Technology

Georgia Institute of Technology Memory Exercise Draw the memory used for the following: int x = 2; int y = 7; int z = x + y; String fullName = null; String firstName = “James”; String lastName = “Clark”; fullName = firstName + lastName; Each int type takes 4 bytes (32 bits) of space. Georgia Institute of Technology

Variables are Temporary Hold values until Reassigned int x = 2; x = 3; // read ‘=‘ as takes on the value of DrJava is exited The interactions pane is reset You can force this by clicking the “Reset” button Or by right click and choose “Reset Interactions” Happens automatically when you compile Georgia Institute of Technology

Objects can be Garbage Collected When objects that have been created have no more references to them They can be garbage collected This means the memory they are using can be freed and reused String name1 = “Bill”; String name1 = new String(“Mary”); The string object created by “Bill” can be garbage collected Georgia Institute of Technology

Georgia Institute of Technology Variable Practice Given the following code What is the value of z at each step? int z = 0; int x = 3; int y = 2; z = x * y; z = z + x; z = z – y; How many variables where declared? How much space do they take? Georgia Institute of Technology

Georgia Institute of Technology Variable Practice What is the value of str1 at each step? String str1 = “Hello World”; str1.toLowerCase(); str1 = str1.toUpperCase(); str1 = “Goodbye World”; How many variables where declared? How many objects were created? How many can be garbage collected? String methods do not change the current string. They return a new string object. Georgia Institute of Technology

Georgia Institute of Technology Variable Practice What is the value of string1 after the following code has executed? String string1 = “HELLO”; System.out.println(string1.toLowerCase()); What type of variable is string1 (primitive or object)? How can you tell? What is the value of string2 and string3 after the following code has executed? String string2 = “Mary”; String string3 = “Clark”; string2 = string2 + string3; Georgia Institute of Technology

Georgia Institute of Technology Variable Practice Declare variables for each of the following The number of kids in a family The cost of a pair of shoes The name of a pet The score of a soccer game The hourly wage of a worker The answer to do you want insurance on a purchase The color of your eyes Your weight The distance you drive on a trip Your test score The number on a lottery ball Georgia Institute of Technology

Georgia Institute of Technology Variable Practice Which turtle does turtle1 refer to after the following code? World myWorld = new World(); Turtle tommy = new Turtle(myWorld); Turtle mary = new Turtle(myWorld); Turtle turtle1 = tommy; turtle1.forward(); turtle1 = mary; turtle1.turnLeft(); Which turtle will go forward? Which turtle will turn left? Notice that we don’t capitalize Tommy and Mary even though they are names. This is because we don’t capitalize variable names in Java. Georgia Institute of Technology

Georgia Institute of Technology Variable Practice Which of these statements will cause an error in the interactions pane and why? World1 world = new World(); World world2 = new World(); World world3 = newWorld(); World world1 = new World1(); World world5 = new World; World my World = new World(); World earth = new World(); Georgia Institute of Technology

Georgia Institute of Technology Allowed Types in Java The type for a variable declaration can be A primitive type: int, double, char, or boolean The name of a Class in the Java language String, JFrame, BufferedImage, etc or the name of a class created by you or someone else Picture, Sound, FileChooser Class names start with an uppercase letter! Note that primitive types are all lowercase. Class names start with an upper case letter. We created the classes Picture, Sound, and FileChooser. These are not part of the Java language. The class JFrame is a main window in Swing. The class BufferedImage is what really holds the picture data. Georgia Institute of Technology

Georgia Institute of Technology Summary You can declare variables by specifying a type and a name You can also assign a value to the variable when you declare it Primitive variables reserve space based on the type Object variables reserve space for a reference to an object An object can be garbage collected if there is no reference to it Georgia Institute of Technology