【Java每日一题】——第三十五题:一个父类Animal和两个子类Rabbit和Tiger描述动物世界的继承关系两个子类吃的行为各不相同(兔子吃草,老虎吃肉)但睡觉的行为是一致

简介: 【Java每日一题】——第三十五题:一个父类Animal和两个子类Rabbit和Tiger描述动物世界的继承关系两个子类吃的行为各不相同(兔子吃草,老虎吃肉)但睡觉的行为是一致

🎯问题:


请设计一个父类Animal和两个子类Rabbit和Tiger描述动物世界的继承关系,两个子类吃的行为各不相同(兔子吃草,老虎吃肉);但睡觉的行为是一致的。具体步骤如下

(1)定义动物类Animal,定义其成员方法eat(吃)和sleep(睡觉);


(2)定义动物类Animal的子类Rabbit,重写父类eat方法,在该方法中输出“兔子吃草”;


(3)定义动物类Animal的子类Tiger,重写父类eat方法,在该方法中输出“老虎吃肉”;


(4) 在测试类Demo中分别创建Rabbit对象和Tiger对象,调用各自的eat(吃)和sleep(睡觉)方法。测试结果如下:

8091a7039def360a9f2374c823ee646b_888799063df141c4877d7188310c9632.png

🎯答案 :

package file3;
class Animal{
  public void eat() {
    // TODO Auto-generated method stu
    System.out.println("动物吃食物");
  }
  public void sleep() {
    System.out.println("睡觉");
  }
}
class Rabbit extends Animal{
  public void eat() {
    // TODO Auto-generated method stub
    System.out.println("兔子吃草");
  }
}
class Tiger extends Animal{
  public void eat() {
    // TODO Auto-generated method stub
    System.out.println("老虎吃肉");
  }
}
public class Demo {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
  Rabbit r1=new Rabbit();
  r1.eat();
  r1.sleep();
  System.out.println("------------------");
  Tiger t1=new Tiger();
  t1.eat();
  t1.sleep();
  }
}


💛废话文学:

Java的优势:

跨平台性: Java是一种跨平台的编程语言,即一次编写,到处运行。Java程序在不同的操作系统上具有很高的移植性,这使得开发人员能够通过Java开发应用程序,无需担心底层操作系统的差异。


面向对象: Java是一种面向对象的编程语言,支持封装、继承和多态等面向对象的特性。这种编程范式使得代码可以更加模块化、可重用,并且有助于提高代码的可维护性和可扩展性。


强大的生态系统: Java拥有丰富的标准库和第三方库,提供了各种功能强大的工具和框架,如Spring、Hibernate和JUnit等。这些工具和框架使得Java开发人员能够更加高效地开发应用程序,并提供了解决特定问题的解决方案。


多线程支持: Java内置了对多线程编程的支持,使得开发人员可以轻松地创建并发应用程序。多线程编程可以有效地利用多核处理器的性能,并提高程序的响应速度和吞吐量。


安全性: Java拥有严格的安全机制,包括字节码验证、安全管理器和安全沙箱等,可以防止恶意代码对系统的破坏。这使得Java成为开发安全性要求较高的应用程序的理想选择。

相关文章
|
6月前
|
设计模式 网络协议 数据可视化
Java 设计模式之状态模式:让对象的行为随状态优雅变化
状态模式通过封装对象的状态,使行为随状态变化而改变。以订单为例,将待支付、已支付等状态独立成类,消除冗长条件判断,提升代码可维护性与扩展性,适用于状态多、转换复杂的场景。
847 157
|
9月前
|
Java 编译器 API
Java 密封类:精细化控制继承关系
Java 密封类:精细化控制继承关系
452 83
|
算法 Java API
如何使用Java开发获得淘宝商品描述API接口?
本文详细介绍如何使用Java开发调用淘宝商品描述API接口,涵盖从注册淘宝开放平台账号、阅读平台规则、创建应用并申请接口权限,到安装开发工具、配置开发环境、获取访问令牌,以及具体的Java代码实现和注意事项。通过遵循这些步骤,开发者可以高效地获取商品详情、描述及图片等信息,为项目和业务增添价值。
352 10
|
存储 人工智能 算法
数据结构与算法细节篇之最短路径问题:Dijkstra和Floyd算法详细描述,java语言实现。
这篇文章详细介绍了Dijkstra和Floyd算法,这两种算法分别用于解决单源和多源最短路径问题,并且提供了Java语言的实现代码。
1205 3
数据结构与算法细节篇之最短路径问题:Dijkstra和Floyd算法详细描述,java语言实现。
|
Java 编译器
【一步一步了解Java系列】:子类继承以及代码块的初始化
【一步一步了解Java系列】:子类继承以及代码块的初始化
380 3
|
Java 程序员 编译器
【Java】继承、super、final、子类构造方法
【Java】继承、super、final、子类构造方法
278 0
|
Java
java中父类方法return this.对象还是变量,子类去调用this.这个方法的问题
本文探讨了在Java中,当父类的方法返回`this`对象或变量时,子类调用该方法的行为,以及`this`关键字在不同类中调用方法时的指向问题。
157 0
java中父类方法return this.对象还是变量,子类去调用this.这个方法的问题
|
安全 Java 开发者
Java修饰符与封装:理解访问权限、行为控制与数据隐藏的重要性
Java中的修饰符和封装概念是构建健壯、易维护和扩展的Java应用程序的基石。通过合理利用访问权限修饰符和非访问修饰符,开发者能够设计出更加安全、灵活且高效的代码结构。封装不仅是面向对象编程的核心原则之一,也是提高软件项目质量和可维护性的关键策略。
214 2
|
Java
java获取继承关系
java获取继承关系
150 6
|
Java
描述 Java 中的重载和重写
【8月更文挑战第22天】
145 0