任务7:继承、super关键字和方法重写
目标:学习Java中的继承、super关键字和方法重写。
步骤:
-
创建Grandma类: 创建一个名为Grandma的类,包含以下字段和方法:
- 字段:String name = "stella";, int age = 80;
- 方法:public void work() { System.out.println("Grandma works"); }
-
创建Mother类: 创建Mother类,继承自Grandma类,包含以下字段和方法:
- 字段:String name = "arasi";, int age = 50;
- 方法:public void work() { System.out.println("Mother works"); System.out.println("Mother's name: " + name); System.out.println("Grandma's name: " + super.name); System.out.println("Grandma's age: " + super.age); super.work(); } 注意这里使用了super关键字调用父类Grandma的work()方法。
-
创建Kid类: 创建Kid类,继承自Mother类,包含以下字段、方法和主方法:
- 字段:String name = "pavi";, int age = 30;
- 方法:
- public void work() { System.out.println("Kid works"); } (重写了父类的方法)
- public void study() { super.work(); System.out.println("Mother's age: " + super.age); System.out.println("Kid's name: " + name); System.out.println("Kid's age: " + age); System.out.println("Kid studies"); } 这里也使用了super关键字,但调用的是Mother类的work()方法。
- 主方法:public static void main(String[] args) { Kid kid = new Kid(); kid.study(); }
代码:
package b15; class Grandma { String name = "stella"; int age = 80; public void work() { System.out.println("Grandma works"); } } class Mother extends Grandma { String name = "arasi"; int age = 50; public void work() { System.out.println("Mother works"); System.out.println("Mother's name: " + name); System.out.println("Grandma's name: " + super.name); System.out.println("Grandma's age: " + super.age); super.work(); } } class Kid extends Mother { String name = "pavi"; int age = 30; public static void main(String[] args) { Kid kid = new Kid(); kid.study(); } public void work() { System.out.println("Kid works"); } public void study() { super.work(); // Calls Mother's work() method System.out.println("Mother's age: " + super.age); System.out.println("Kid's name: " + name); System.out.println("Kid's age: " + age); System.out.println("Kid studies"); } }
输出:
Mother works Mother's name: arasi Grandma's name: stella Grandma's age: 80 Grandma works Mother's age: 50 Kid's name: pavi Kid's age: 30 Kid studies
这个输出展示了继承和super关键字的用法,以及方法重写的效果。 Kid类重写了work()方法,但通过super.work()仍然可以访问父类中的work()方法。 super关键字正确地访问了父类中的字段和方法。
以上就是任务7的详细内容,更多请关注知识资源分享宝库其它相关文章!
版权声明
本站内容来源于互联网搬运,
仅限用于小范围内传播学习,请在下载后24小时内删除,
如果有侵权内容、不妥之处,请第一时间联系我们删除。敬请谅解!
E-mail:dpw1001@163.com
发表评论