-
子类拥有父类非 private 的属性、方法。
- 子类使用父类的public protected属性,方法相当与没写
package com.example.demo; import java.util.ArrayList; import java.util.List; public class Test { public static void main(String[] args) { Animal animal=new Animal(); animal.update(); Cat cat=new Cat(); cat.add(new heart(),animal); Animal dog=new Dog(new heart()); Animal dog1=new Dog(new heart()); dog.toString(); animal.update(); } } class heart{ protected String name; public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "heart{" + "name='" + name + '\'' + '}'; } } class Animal { public List<heart> hearts= new ArrayList<heart>(); @Override public String toString() { return "Animal{" + "hearts=" + hearts + '}'; } public void update(){ System.out.println(hearts.toString()); for (heart heart:hearts) System.out.println(heart.getName()); } } class Cat { public void add(heart heart,Animal a){ heart.setName("cay"); a.hearts.add(heart); System.out.println(heart.name); System.out.println(a.hearts.toString()); } } class Dog extends Animal{ public Dog(heart heart) { super(); heart.setName("dog"); hearts.add(heart); toString(); } }
[]
cay
[heart{name='cay'}]
[heart{name='cay'}]
cay
相关文章
- 02-08子类继承之后添加新的属性出现报错及解决方法
- 02-08警告 7 隐藏了继承的成员。如果是有意隐藏,请使用关键字 new
- 02-08面向对象的三大特征之继承
- 02-08继承
- 02-08关于C++的继承与派生
- 02-08Python-类的继承
- 02-08封装继承多态
- 02-08继承_多态
- 02-08OOP面向对象(继承,方法重写/覆盖,多态,instanceof运算符) 7.19学习
- 02-08Effective C++:规定34:区分接口继承和实现继承