access modifiers argument passinglarry.aamodt/cptr241/lect9_access_overload.pdf · java's...
TRANSCRIPT
![Page 1: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/1.jpg)
![Page 2: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/2.jpg)
Access Modifiers Argument Passing Method Overloading
![Page 3: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/3.jpg)
Chapter 5 topics we skipped over:
- Irregular arrays - Command line arguments - Bitwise operators such as AND, OR, Shift, etc - For-Each style loops - The ? operator
![Page 4: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/4.jpg)
Java's Access Modifiers
- public- private- protected (will cover in chapter 8)
- default is assumed if no modifier present
![Page 5: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/5.jpg)
When a member of a class is labeled publicit can be accessed by any other code inyour program including methods defined in other classes.
ex:class myClass { public int varX; public checkBounds(int k) { …. }}
![Page 6: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/6.jpg)
When a member of a class is labeled privateit can only be accessed by methods withinthat class.
ex:class myClass { private int varX;
private checkBounds(int k) { …. }}
![Page 7: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/7.jpg)
When a member of a class has no accessspecification the default is used, which isthe same as public ... Unlessthe program is broken into packages
(packages are groupings of classes whichhelp with program organization and alsoaccess control. Chapter 8 will cover this)
![Page 8: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/8.jpg)
Argument Passing
- call-by-value (pass-by-value)copies the value of an argument
the method to which a value is passed cannot change the original variable in the main
- call-by-reference (pass-by-reference)a reference to an object is passed
![Page 9: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/9.jpg)
Argument Passing (continued)
- call-by-reference (pass-by-reference)a reference to an object is passed
the location of the object is passed to the called method, not the object itself.
When the called method changes the contents of a variable in the object, the original object is changed.
![Page 10: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/10.jpg)
Method Overloading
- one way that Java implements polymorphism
- overloading means two or more methods within the same class can share the same name …. so long as their parameter definitions are different
- For example, a method that adds two private variables could have an integer version and a real number version (i.e. a double type)
- Constructors in a class can be overloaded as well as methods
![Page 11: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/11.jpg)
// Demonstrate method overloading. class Overload {
void ovlDemo() { System.out.println("No parameters"); }
// Overload for one integer parameter. void ovlDemo(int a) { System.out.println("One parameter: " + a); }
// Overload for two integer parameters. int ovlDemo(int a, int b) { System.out.println("Two parameters: " + a + " " + b); return a + b; }}
![Page 12: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/12.jpg)
class OverloadDemo { public static void main(String args[]) { Overload ob = new Overload(); ob.ovlDemo(); System.out.println();
ob.ovlDemo(2); System.out.println(); }}
![Page 13: Access Modifiers Argument Passinglarry.aamodt/cptr241/lect9_access_overload.pdf · Java's Access Modifiers - public - private - protected (will cover in chapter 8) - default is assumed](https://reader030.vdocuments.us/reader030/viewer/2022041023/5ed4ab91d18c7b5d8f4ba3f8/html5/thumbnails/13.jpg)