You are on page 1of 70

A+ Computer Science

www.apluscompsci.com

A+ Computer Science

www.apluscompsci.com

A reference variable is used to store the location of an Object. In most situations, a reference stores the actual memory address of an Object. fred and sally store the location / memory address of two new Monster Objects.

A+ Computer Science

www.apluscompsci.com

A reference variable is used to store the location of an Object. In most situations, a reference stores the actual memory address of an Object. m stores the location / memory address of a new Monster.

A+ Computer Science

www.apluscompsci.com

A+ Computer Science

www.apluscompsci.com

A non-reference variable is a storage location for a value. numDays is an integer primitive variable. numDays is not a reference variable. numDays stores an integer value. hTownTax is a double primitive variable. hTownTax is not a reference variable. hTownTax stores a decimal value.

A+ Computer Science

www.apluscompsci.com

A variable is a box that stores a specific type of value. numDays stores an integer value. numDays is not a reference; thus, it does not store a location / memory address.

A+ Computer Science

www.apluscompsci.com

A+ Computer Science

www.apluscompsci.com

An identifier is used to identify something. Identifiers should begin with letters. Identifiers can contain symbols, letters, and numbers. A box that will store integer numbers needs a name. The name should clearly identify what will be stored in the box. width clearly states that the box will contain the width of something. Triangle is used to identify a class. The assumption is that the class will store information about Triangles.

A+ Computer Science

www.apluscompsci.com

1stYear is not legal. Identifiers cannot start with numbers. jump up is not legal. Identifiers cannot contain spaces. feet2Inches is legal. BigTriangle is legal. SpaceInvaders is legal. Space_Invaders is legal. _SpaceInvaders is legal, but not a suggested naming style.

A+ Computer Science

www.apluscompsci.com

10

Use identifier names that are clear and informative. The name totalPay seems to indicate the variable will store the total pay amount for someone or something. double nationalDebt; char firstLetterOfLastName; long buildingHeight; public class BlinkyBall{} public class BlackJack{}

A+ Computer Science

www.apluscompsci.com

11

Keywords are words that have been assigned a special purpose in the language. Keywords cannot be used as identifier names.

A+ Computer Science

www.apluscompsci.com

12

Java is case sensitive.

A+ Computer Science

www.apluscompsci.com

13

A+ Computer Science

www.apluscompsci.com

14

A+ Computer Science

www.apluscompsci.com

15

When defining a variable, a data type must be provided. The data type describes what will be stored in the variable. A variable is a box where things will be stored. The data type states what kind of things can be placed in the box.

int can store non-decimal positive and negative numbers.


double can store decimal positive and negative numbers.

A+ Computer Science

www.apluscompsci.com

16

This data type chart lists most data types memory usage and range of storage values.

A+ Computer Science

www.apluscompsci.com

17

A+ Computer Science

www.apluscompsci.com

18

Integer types(byte, short, int, long, and char) can only store non-decimal values.

A+ Computer Science

www.apluscompsci.com

19

int one = 120.0; results in an error. 120.0 is a decimal value and integer types cannot store decimal values. int one = (int)120.0; type casting temporarily converts the receiving value so that it can be stored in an integer storage location.

A+ Computer Science

www.apluscompsci.com

20

A+ Computer Science

www.apluscompsci.com

21

A+ Computer Science

www.apluscompsci.com

22

Real / decimal types (float, double) can store non-decimal values as well as decimal values. double example = 456; example = 456.323;

A+ Computer Science

www.apluscompsci.com

23

Real / decimal types (float, double) can store non-decimal values as well as decimal values. double example = 456; example = 456.323;

A+ Computer Science

www.apluscompsci.com

24

A+ Computer Science

www.apluscompsci.com

25

A+ Computer Science

www.apluscompsci.com

26

char is an integer data type.

A+ Computer Science

www.apluscompsci.com

27

char is an unsigned(has no negative range) integer data type. char letter = 97; out.println(letter); letter = 'A'; out.println(letter); //outs A //outs a

A+ Computer Science

www.apluscompsci.com

28

Once you memorize the starting value for A, a, and 0, determining the ASCII values for most letters and numbers is pretty simple.

A+ Computer Science

www.apluscompsci.com

29

Because char is an integer data type, it is okay to store non-decimal values in a char. It is also okay to perform integer math operations on a char variable and to store math results in a char variable. char example = 98;

out.prinltn(example);
example = 'A'+5; out.prinltn(example);

//outs a b

//outs a F

out.prinltn('A'+5); //outs a 70 //outs a 70 because char + int nets an int

A+ Computer Science

www.apluscompsci.com

30

A+ Computer Science

www.apluscompsci.com

31

A+ Computer Science

www.apluscompsci.com

32

A+ Computer Science

www.apluscompsci.com

33

A boolean can store true or false. A boolean cannot store letters or numbers.

A+ Computer Science

www.apluscompsci.com

34

A+ Computer Science

www.apluscompsci.com

35

A+ Computer Science

www.apluscompsci.com

36

A+ Computer Science

www.apluscompsci.com

37

A+ Computer Science

www.apluscompsci.com

38

A+ Computer Science

www.apluscompsci.com

39

The variable receiving the value is placed on the left of the assignment operator( = ). 57 is the value being placed in box receiver.

A+ Computer Science

www.apluscompsci.com

40

A data-type must be placed in front of/to the left of a variable name when that variable is defined. When assigning a variable that has already been defined, only the name and the value are required.

A+ Computer Science

www.apluscompsci.com

41

Variable definitions and assignments can be performed on one line. int intFun=75; //definition and assignment More than one variable can be defined and assigned on the same line. int go=3, stop=2, pause=1; //separate with a comma

A+ Computer Science

www.apluscompsci.com

42

A+ Computer Science

www.apluscompsci.com

43

A+ Computer Science

www.apluscompsci.com

44

This data type chart lists most data types memory usage and range of storage values.

A+ Computer Science

www.apluscompsci.com

45

The more bits a data type has the more that data type can store. A 64 bit type has much more storage room than an 8 bit type. 128 64 32 16 8 4 2 1 base 10 value of each binary digit 1 0 1 0 = 10 in base 10 1 1 1 1 = 15 in base 10(4 bit) 1 1 0 1 0 1 0 1 0 0 0 = 136 in base 10 1 1 1 1 1 = 255 in base 10(8 bit)

A+ Computer Science

www.apluscompsci.com

46

The MIN_VALUE and MAX_VALUE fields store the minimum and maximum values that can be stored in a particular type.

A+ Computer Science

www.apluscompsci.com

47

The MIN_VALUE and MAX_VALUE fields store the minimum and maximum values that can be stored in a particular type.

A+ Computer Science

www.apluscompsci.com

48

Overflow errors occur at run-time when a value is assigned to a variable that is too large. The resulting value is typically a negative value. The negative value occurs when the positive upper bound is overflowed into the negative range.

Attempting to assign a numeric constant that is too large to a variable is a syntax error. It is very easy for Java to determine that the value is too large for the data type. byte example = 128; //compile error

A+ Computer Science

www.apluscompsci.com

49

A+ Computer Science

www.apluscompsci.com

50

The MIN_VALUE and MAX_VALUE fields store the minimum and maximum values that can be stored in a particular type.

A+ Computer Science

www.apluscompsci.com

51

A+ Computer Science

www.apluscompsci.com

52

The MIN_VALUE and MAX_VALUE fields store the minimum and maximum values that can be stored in a particular type.

A+ Computer Science

www.apluscompsci.com

53

A+ Computer Science

www.apluscompsci.com

54

A+ Computer Science

www.apluscompsci.com

55

As Java is a strong-typed language, it is important to pay attention to data types when assigning values. Integer types cannot store decimal values unless a cast is used. Also, when assigning values from one variable to another, data types and data type sizes play an important part.

A+ Computer Science

www.apluscompsci.com

56

When assigning values from one variable to another, data types and data type sizes play an important part. Large size types can be assigned same size type and smaller type values. Smaller size types cannot be assigned larger type values.

16 bit = 16 bit and smaller


8 bit = 16 bit and smaller

//legal
//illegal without a cast()

A+ Computer Science

www.apluscompsci.com

57

A+ Computer Science

www.apluscompsci.com

58

A+ Computer Science

www.apluscompsci.com

59

A+ Computer Science

www.apluscompsci.com

60

A+ Computer Science

www.apluscompsci.com

61

For each of the primitive types, there is a corresponding wrapper class. int has a corresponding wrapper class named Integer. int stores a non-decimal value. Integer stores the location / memory address of an Integer Object which stores an int value. double has a corresponding wrapper class named Double. double stores decimal and non-decimal values. Double stores the location / memory address of a Double Object which stores a double value.

A+ Computer Science

www.apluscompsci.com

62

Before autoboxing and autounboxing, a reference could only refer to a primitive if a Wrapper class was instantiated and the primitive passed to the constructor.

A+ Computer Science

www.apluscompsci.com

63

Integer numOne = 99; is equivalent to Integer numOne = new Integer(99); With the introduction of Java 5, the new Integer() Object instantiation code happens in the background. Java takes care of these details, but does not show the work.

A+ Computer Science

www.apluscompsci.com

64

Double numOne = 99; is equivalent to Double numOne = new Double(99); With the introduction of Java 5, the new Double() Object instantiation code happens in the background. Java takes care of these details, but does not show the work.

A+ Computer Science

www.apluscompsci.com

65

Before autoboxing and autounboxing, a reference value could only be stored in a primitive if the corresponding reference get method was called to retrieve the primitive value from the reference.

A+ Computer Science

www.apluscompsci.com

66

Integer numOne = new Integer(99); int primInt = numOne; is equivalent to int primInt = numOne.intValue(); With the introduction of Java 5, the intValue() method call happens in the background. Java takes care of these details, but does not show the work.

A+ Computer Science

www.apluscompsci.com

67

Before autoboxing and autounboxing, a reference could only refer to a primitive if a Wrapper class was instantiated and the primitive passed to the constructor. Before autoboxing and autounboxing, a reference value could only be stored in a primitive if the corresponding reference get method was called to retrieve the primitive value from the reference. With the introduction of Java 5, the wrapping and unwrapping / boxing and unboxing happens in the background. Java takes care of these details, but does not show the work.

A+ Computer Science

www.apluscompsci.com

68

A+ Computer Science

www.apluscompsci.com

69

A+ Computer Science

www.apluscompsci.com

70

You might also like