© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 1 הפניות.

Slides:



Advertisements
Similar presentations
Complete Structure class Date {class Date { private :private : // private data and functions// private data and functions public :public : // public data.
Advertisements

Continuation of chapter 6…. Nested while loop A while loop used within another while loop is called nested while loop. Q. An illustration to generate.
1 Classes and Objects in Java Parameter Passing, Delegation, Visibility Control, and Object Cleanup.
Introduction to Computer Science Robert Sedgewick and Kevin Wayne Recursive Factorial Demo pubic class Factorial {
TNPL JoongJin-Cho Runge-kutta’s method of order 4.
1 Calling within Static method /* We can call a non static method from a static method but by only through an object of that class. */ class Test1{ public.
תוכנה 1 סמסטר א ' תשע " ב תרגול מס ' 7 * מנשקים, דיאגרמות וביטים * לא בהכרח בסדר הזה.
Övning 4. Repetition göra egna klasser class Rektangel { private double längd; private double bredd; public Rektangel(double l, double b) { this.längd.
האוניברסיטה העברית בירושלים
1 תוכנה 1 תרגול 14 – סיכום. 2 קצת על מנשקים מנשק יכול להרחיב יותר ממנשק אחד שירותים במנשק הם תמיד מופשטים וציבוריים public interface MyInterface { public.
 Setter methods ◦ public methods that set the value of instance variables to a value specified by the call to the argument ◦ Setter methods do not violate.
תכנות ב C#. דוגמא לפלט using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class Program { static void.
הוראת המדעים האוניברסיטה העברית1 רקורסיה. הוראת המדעים האוניברסיטה העברית2 חלק א: רקורסיה עם מספרים.
© המרכז להוראת המדעים האוניברסיטה העברית בירושלים
תרגול 12 מעקב אובייקטים 1. Our exams material : Course Syllabus : includes all the material.
Do You Understand Methods and Parameters? In this section you will be shown 25 different programs. Most of these programs have some type of error. A few,
CS 2430 Day 9. Announcements Quiz on Friday, 9/28 Prog1: see , see me as soon as possible with questions/concerns Prog2: do not add any public methods.
תרגול 13 חזרה 1. Exam example 8 public class Stam { private char x; public Stam() { this.x = '*'; } public Stam (char c) { this.x = c; } public Stam getStam()
1 המרכז להוראת המדעים © האוניברסיטה העברית בירושלים עוברים לג ' אווה.
Java - Classes JPatterson. What is a class? public class _Alpha { public static void main(String [] args) { } You have been using classes all year – you.
Midterm 2 Review 1. 2 Object Oriented Programming Write a Date class. It should contain fields for day, month, year, number of months per year, and number.
Objects & Classes Weiss ch. 3. So far: –Point (see java.awt.Point) –String –Arrays of various kinds –IPAddress (see java.net.InetAddress) The Java API.
Classes. Student class We are tasked with creating a class for objects that store data about students. We first want to consider what is needed for the.
Public class Edo1 { private static double euler(double y, double h, double t, Derivada d) { return y + h * d.f(y, t); } public static void euler(double.
Review TEST 2 Chapters 4,5,7. QUESTION For which type of operands does the == operator always work correctly: (a) int, (b) double, or (c) String?
1 המרכז להוראת המדעים © האוניברסיטה העברית בירושלים פולימורפיזם מתקדם ממשקים בג ' אווה 1.
Take out a piece of paper and PEN. The quiz starts ONE minute after the tardy bell rings. You will have 45 – 90 seconds per question. Determine the output.
FOR LOOP WALK THROUGH public class NestedFor { public static void main(String [] args) { for (int i = 1; i
1 Advanced Programming Examples Output. Show the exact output produced by the following code segment. char[,] pic = new char[6,6]; for (int i = 0; i
Object-oriented programming ( תכנות מונחה עצמים) involves programming using objects. An object עצם)) represents an entity in the.
Print Row Function void PrintRow(float x[ ][4],int i) { int j; for(j=0;j
1 נתבונן בפונקציה הבאה public static int min(int[] a,int n) { int min = a[0]; for (int i = 1; (i < n ) && (i < a.length) ; i++) if (min > a[i]) min = a[i];
Methods What is a method? Main Method the main method is where a stand alone Java program normally begins execution common compile error, trying.
Int fact (int n) { If (n == 0) return 1; else return n * fact (n – 1); } 5 void main () { Int Sum; : Sum = fact (5); : } Factorial Program Using Recursion.
JAVA METHODS (FUNCTIONS). Why are they called methods? Java is a strictly object-oriented programming language Methods are functions inside of objects.
Homework 10 Due ( MT sections ) ( WTh sections ) at midnight Sun., 11/10 Mon., 11/11 Problems
Programming in Java Transitioning from Alice. Becomes not myFirstMethod but …. public static void main (String[] arg) { // code for testing classes goes.
Import javax.swing.JOptionPane; public class Rectangle { public static void main(String[] args) { double width, length, area, perimeter; String lengthStr,
Staples are our staple Building upon our solution.
מחרוזות – הטיפוס String
Methods Matthew Harrison. Overview ● There are five main aspects of methods... ● 1) Modifiers – public, private ● 2) Method Name ● 3) Parameters ● 4)
האוניברסיטה העברית בירושלים
התוכנית: using System; using System.Collections.Generic;
using System; namespace Demo01 { class Program
Sum of natural numbers class SumOfNaturalNumbers {
Interface.
Function Call Trace public class Newton {
באר-שבע 2015 יום עיון
תכנות מונחה עצמים.
© המרכז להוראת המדעים האוניברסיטה העברית בירושלים
Functions Used to write code only once Can use parameters.
Computing Adjusted Quiz Total Score
תוכנה 1 בשפת Java שיעור מספר 5: "זרוק לו עצם"
תוכנה 1 תרגול 13 – סיכום.
פולימורפיזם מתקדם ממשקים בC# עריכה ועיצוב: קרן הרדי
Unit-2 Objects and Classes
Java Lesson 36 Mr. Kalmes.
Code Animation Examples
References, Objects, and Parameter Passing
Recursive GCD Demo public class Euclid {
References and Objects
class PrintOnetoTen { public static void main(String args[]) {
Java Programming with Multiple Classes
Web Service.
PreAP Computer Science Review Quiz 08
Scope of variables class scopeofvars {
COMPUTER 2430 Object Oriented Programming and Data Structures I
Object Oriented Programming.
Local variables and how to recognize them
MIS 222 – Lecture 12 10/9/2003.
Presentation transcript:

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 1 הפניות

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 2 הנושאים הפניות לעומת עצמים. פעולה בונה מעתיקה. עצם (הפניה) כפרמטר של פעולה. עצמים מורכבים.

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 3 הפניות לעומת עצמים Bucket b1; Bucket b2 = b1; b2.fill(3); b1.fill(5); מה התוצאה ? NullPointerException

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 4 השמה של הפניות public static void main(String[] args){ Bucket buck1 = new Bucket(10); buck1.fill(3); Bucket buck2 = new Bucket(20); buck2.fill(5); Bucket buck3 = buck2; buck3.fill(4); IO.println(buck3.toString()); IO.println(buck2.toString()); } רוצים עצם שהוא העתק של buck2

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 5 העתקה בדרך אחרת דרך א: Bucket buck3 = new Bucket(buck2.getCapacity(), buck2.getCurrentAmount()); דרך ב: (ייתכן שכלל אין פעולות getXX) נגדיר פעולה בונה שמטרתה להעתיק את התכונות מעצם אחד לעצם שני: public Bucket (Bucket b2) { this.capacity = b2.capacity; this.currentAmount = b2.currentAmount; }

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 6 שימוש בפעולה בונה מעתיקה public static void main(String[] args) { Bucket buck1 = new Bucket(10); buck1.fill(3); Bucket buck2 = new Bucket(20); buck2.fill(5); Bucket buck3 = buck2; } Bucket buck3 = new Bucket(buck2);

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 7 עצמים מורכבים public class MilkBottle{ private int capacity; private double fat; private Date expiryDate; public MilkBottle(){…} public int getCapacity(){…} public double getFat(){…} public Date getExpiryDate(){…} } MilkBottle Date

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 8 בעיה 1 public class TestMilkBottle{ public static void main(String[] args){ Date d1 = new Date(12,4,2007); MilkBottle mb = new MilkBottle(5, 1.5, d1); d1.setYear(2008); } } public class MilkBottle{ public MilkBottle (int capacity, double fat, Date expiryDate){ this.capacity = capacity; this.fat = fat; this.expiryDate = expiryDate; } {

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 9 בעיה 1 - המשך public static void main(String[] args){ Date d1 = new Date (3, 6, 2005); MilkBottle mb = new MilkBottle (2, 0.5, d1); d1.setYear (2007); } d1 public MilkBottle (int capacity, double fat, Date expiryDate){ this.capacity = capacity; this.fat = fat this.expiryDate = expiryDate; } expiryDate mb capacity 0.5 fat

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 10 בעיה 2 public static void main(String[] args){ Date d1 = new Date (3, 6, 2005); MilkBottle mb = new MilkBottle (2, 0.5, d1); Date d2 = mb.getExpiryDate(); d2.setYear(2011); } public Date getExpiryDate(){ return this.expiryDate; }

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 11 פתרון בעיה 1 public MilkBottle (double capacity, int fat, Date expiryDate){ this.capacity = capacity; this.fat = fat this.expiryDate = new Date (expiryDate) ; } public Date(Date d){ this.year = d.year; this.month = d.month; this.day = d.day; }

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 12 פתרון בעיה 2 public Date getExpiryDate()} return new Date(this.expiryDate); } public static void main (String[] args){ Date d1 = new Date(1, 1, 2009); MilkBottle mb = new MilkBottle(5, 3, d1); Date d3 = mb.getExpiryDate(); d3.setMonth(); }

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 13 תרגול תרגיל תיאורטי פעולה בונה מעתיקה מלבן

© המרכז להוראת המדעים האוניברסיטה העברית בירושלים 14 סיכום הפניות לעומת עצמים השמה של הפניות פעולה בונה מעתיקה עצם מורכב