java举个相关的例子
时间: 2023-09-19 19:05:51 浏览: 44
好的,我们举一个Java中的例子来说明这个问题。假设我们有一个Animal类和一个Dog类,Dog类是Animal类的子类,代码如下:
```java
public class Animal {
public void eat() {
System.out.println("Animal is eating");
}
}
public class Dog extends Animal {
@Override
public void eat() {
System.out.println("Dog is eating");
}
public void bark() {
System.out.println("Dog is barking");
}
}
```
现在我们创建一个Animal类型的对象animal和一个Dog类型的对象dog,然后将dog对象赋值给animal对象,代码如下:
```java
Animal animal = new Dog();
```
由于Dog是Animal的子类,因此我们可以将Dog类型的对象赋值给Animal类型的变量。此时,我们可以调用Animal类中的方法,也可以调用Dog类中的方法,例如:
```java
animal.eat(); // 输出 "Dog is eating"
((Dog)animal).bark(); // 输出 "Dog is barking"
```
这里需要注意的是,我们需要将animal对象强制转换为Dog类型才能调用Dog类中的方法。这个例子就展示了父类对象可以接受子类实例的特性。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)