Inheritance II and Midterm Review (Discussion 5) (Kế thừa trong lập trình hướng đối tượng) - Christine Zhou
Generating preview...
Tài liệu thảo luận về kế thừa trong lập trình hướng đối tượng, bao gồm quy tắc gọi phương thức, field hiding, và ôn tập giữa kỳ với bài tập reduce.
Description
Discussion 5: Inheritance and Midterm Review Christine Zhou Agenda Announcements Inheritance Practice 4. Midterm Review on Worksheet 2. Reduce on Worksheet Announcements Field hiding is in scope! Same as static lookup Sorry for the mix-up. We’ll go over this today Midterm is tomorrow 8-10PM. Room assignments on Piazza Go to right rooms! Best of luck! HW3 is due Friday 11:59PM Get started on the project! Discussion survey: tinyurl.com/disc5cz Inheritance Rules For non-static methods: During compilation: If static type has the method, it compiles. Otherwise check parent, parent… Compile time error if no more parent and still haven’t found the method. During runtime: Run the method in the dynamic type. Otherwise check parent, parent... For static method: During compilation: Same as non-static During runtime: Run the method found during compilation (don’t look at the dynamic type!) Always look at the dynamic type when running methods, unless the method is static! For fields: Use same procedures as static method lookup Look in the static type for the field and use the field that you eventually find Field Hiding If you have a variable of the same name in the static and dynamic type, then this is called “field hiding/shadowing”. It’s possible for the field in the static type to “hide/shadow” the field in the dynamic type. Field hiding is not good practice! Example public class Animal { public String x = “Animal”; public static void staticM() { System.out.println(“A static”); } public class Dog extends Animal { public String x = “Dog”; public static void staticM() { System.out.println(“D static”); } public void nonStaticM() { System.out.println(“A public void nonStaticM() { nonStatic”); System.out.println(“D } nonStatic”); public static void m1(Animal a) { } System.out.println(“A m1”); a.nonStaticM(); } } } public class Runner { public static void main(String[] args) { Animal a = new Dog(); System.out.println(a.x); a.nonS
AI summary
- Document name
- Inheritance II and Midterm Review (Discussion 5) (Kế thừa trong lập trình hướng đối tượng) - Christine Zhou
- School / Course
- University of California, Berkeley · Lập trình Java
- Author (in document)
- Christine Zhou
- Content
- Tài liệu về kế thừa và giảm thiểu trong lập trình hướng đối tượng
- Table of contents
- Agenda
- Announcements
- Inheritance Rules
- Field Hiding
- Example
- Midterm Review
- Reduce
- Pages
- 9 pages
- Uploaded by
- Uni24h
Frequently asked questions
Is this document free?
Yes. “Inheritance II and Midterm Review (Discussion 5) (Kế thừa trong lập trình hướng đối tượng) - Christine Zhou” is free — just sign in and click Download to get the original file.
How many pages is this document?
The document has 9 pages, for the course Lập trình Java. You can preview it online before downloading.
Can I preview before downloading?
Yes. You can preview this document right on this page with the online reader, then decide whether to download.
Inheritance II and Midterm Review (Discussion 5) (Kế thừa trong lập trình hướng đối tượng) - Christine Zhou
Generating preview...
Discussion 5: Inheritance and Midterm Review Christine Zhou Agenda Announcements Inheritance Practice 4. Midterm Review on Worksheet 2. Reduce on Worksheet Announcements Field hiding is in scope! Same as static lookup Sorry for the mix-up. We’ll go over this today Midterm is tomorrow 8-10PM. Room assignments on Piazza Go to right rooms! Best of luck! HW3 is due Friday 11:59PM Get started on the project! Discussion survey: tinyurl.com/disc5cz Inheritance Rules For non-static methods: During compilation: If static type has the method, it compiles. Otherwise check parent, parent… Compile time error if no more parent and still haven’t found the method. During runtime: Run the method in the dynamic type. Otherwise check parent, parent... For static method: During compilation: Same as non-static During runtime: Run the method found during compilation (don’t look at the dynamic type!) Always look at the dynamic type when running methods, unless the method is static! For fields: Use same procedures as static method lookup Look in the static type for the field and use the field that you eventually find Field Hiding If you have a variable of the same name in the static and dynamic type, then this is called “field hiding/shadowing”. It’s possible for the field in the static type to “hide/shadow” the field in the dynamic type. Field hiding is not good practice! Example public class Animal { public String x = “Animal”; public static void staticM() { System.out.println(“A static”); } public class Dog extends Animal { public String x = “Dog”; public static void staticM() { System.out.println(“D static”); } public void nonStaticM() { System.out.println(“A public void nonStaticM() { nonStatic”); System.out.println(“D } nonStatic”); public static void m1(Animal a) { } System.out.println(“A m1”); a.nonStaticM(); } } } public class Runner { public static void main(String[] args) { Animal a = new Dog(); System.out.println(a.x); a.nonS
Read full document
- Document name
- Inheritance II and Midterm Review (Discussion 5) (Kế thừa trong lập trình hướng đối tượng) - Christine Zhou
- School / Course
- University of California, Berkeley · Lập trình Java
- Author (in document)
- Christine Zhou
- Content
- Tài liệu về kế thừa và giảm thiểu trong lập trình hướng đối tượng
- Table of contents
- Agenda
- Announcements
- Inheritance Rules
- Field Hiding
- Example
- Midterm Review
- Reduce
- Pages
- 9 pages
- Uploaded by
- Uni24h
Comments (0)
No comments yet. Be the first!
Misc.onclusion (Discussion 14-END) (Ôn tập cấu trúc dữ liệu) - Christine Zhou
Final Review Solutions (Cấu trúc dữ liệu heap, hàng đợi ưu tiên và duyệt đồ thị) - Ching and Christines
Giáo trình Lập trình Java
Inheritance (Discussion 4) (Kế thừa trong Java) - Christine Zhou
Asymptotic Analysis (Discussion 7) (Phân tích tiệm cận) - Christine Zhou
Chương 7.Cơ học lượng tử - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Chương 6.Quang học lượng tử - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Chương 5.Thuyết tương đối - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Chương 4. Tán xạ ánh sáng - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Chương 3.Phân cực ánh sáng - Vật lý đại cương 3 - TS.Nguyễn Thị Trang
Comments (0)
No comments yet. Be the first!