darrell bethea may 23 2011 program 2 due today midterm on
play

Darrell Bethea May 23, 2011 Program 2 due today Midterm on - PowerPoint PPT Presentation

Darrell Bethea May 23, 2011 Program 2 due today Midterm on Thursday Covers everything we did up through last Thursday Including reading (Ignore parts of sample midterm using Ch. 5) Loop worksheet answer sheet mistake #6


  1. Darrell Bethea May 23, 2011

  2.  Program 2 due today  Midterm on Thursday ◦ Covers everything we did up through last Thursday ◦ Including reading ◦ (Ignore parts of sample midterm using Ch. 5)  Loop worksheet answer sheet mistake ◦ #6 should be 43, not 44 ◦ Updated online 2

  3.  Returning Program 1 today ◦ Look carefully over feedback ◦ Grading will get more strict  MANY .jar files were built incorrectly  New tester for .jar files ◦ Test your Program 2 (even if you already submitted) ◦ Mandatory starting with Program 3 ◦ JarChecker.java on the course website 2

  4. Some Jar Creation Errors  No Class-Path: line  No Main-Class: line  Incorrect class names: ◦ Main-Class: bluth ◦ Main-Class: Bluth.java ◦ Main-Class: Bluth (replace Bluth with the name of your Java class)  Spaces after class name  All these detected by JarChecker.jar 2

  5. 3

  6.  Class: a definition of a kind of object  Object: an instance of a class ◦ Contains instance variables (data) and methods  Methods ◦ Methods that return a value ◦ Methods that return nothing 4

  7.  Local variables and instance variables  Brief introduction to methods with parameters (aka arguments)  In-class exercise 5

  8.  Instance variables ◦ Declared in a class ◦ Confined to the class  Can be used anywhere in the class that declares the variable, including inside the class’ methods  Local variables ◦ Declared in a method ◦ Confined to the method  Can only be used inside the method that declares the variable 6

  9. public class Student • classYear and name are { instance variables public String name; public int classYear; • can be used in any method in // ... this class public void printInfo() { • info is a local variable String info = name + “: ” + classYear; System.out.println(info); declared inside method } printInfo() • can only be used inside public void increaseYear() { method printInfo() classYear++; } public void decreaseYear() { classYear--; } } 7

  10. public class Student { public String name; public int classYear; // ... public void printInfo() { String info = name + “: ” + classYear; System.out.println(info); } public void increaseYear() The compiler will not recognize { the variable info inside of classYear++; info = “My info string”; // ERROR!!! method increaseYear() } public void decreaseYear() { classYear--; } } 8

  11. public static void main(String[] args) { Variable info in main Student jack = new Student(); method not affected jack.name = “Jack Smith”; jack.major = “Computer Science”; by variable info in printInfo method in String info = “Hello there!”; class Student System.out.println(info); System.out.println(jack.name + “ is majoring in ” + jack.major); Student apu = new Student(); apu.name = “Apu Nahasapeemapetilon”; apu.major = “Biology”; System.out.println(apu.name + “ is majoring in ” + apu.major); } 9

  12.  Compute the square of this number ◦ 5 ◦ 10 ◦ 7  I could give you any number, and you could tell me the square of it  We can do the same thing with methods 10

  13.  Parameters are used to hold the value that you pass to the method  Parameters can be used as (local) variables inside the method Parameters go inside public int square(int number) parentheses of { method header return number * number; } 11

  14. public class Student { public String name; public int classYear; // ... public void setName(String studentName) { name = studentName; } public void setClassYear(int year) { classYear = year; } } 12

  15. public static void main(String[] args) { Student jack = new Student(); jack.setName(“Jack Smith”); jack.setClassYear(3); } Arguments 13

  16.  Multiple parameters separated by commas public double getTotal(double price, double tax) { return price + price * tax; } 15

  17.  Order, type, and number of arguments must match parameters specified in method heading 16

  18. public class SalesComputer { public double getTotal(double price, double tax) { return price + price * tax; } // ... SalesComputer sc = new SalesComputer(); double total = sc.getTotal(“19.99”, Color.RED); double total = sc.getTotal(19.99); double total = sc.getTotal(19.99, 0.065); int price = 50; total = sc.getTotal(price, 0.065); Automatic typecasting 17

  19. Tomorrow  Even more about classes  Information Hiding and Encapsulation 20

  20. 18

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend