Java 抽象类和继承示例:动物、狗和猫
"""java\nabstract class Animal {\n\tprotected String name;\n\n\tpublic Animal(String name) {\n\t\tthis.name = name; \n\t}\n\n\tpublic abstract void sound();\n\n\tpublic void eat() {\n\t\tSystem.out.println(name + " is eating.");\n\t}\n}\n\nclass Dog extends Animal {\n\tpublic Dog(String name) {\n\t\tsuper(name);\n\t}\n\n\tpublic void sound() {\n\t\tSystem.out.println(name + " is barking.");\n\t}\n}\n\nclass Cat extends Animal {\n\tpublic Cat(String name) {\n\t\tsuper(name);\n\t}\n\n\tpublic void sound() {\n\t\tSystem.out.println(name + " is meowing.");\n\t}\n}\n\npublic class Main {\n\tpublic static void main(String[] args) {\n\t\tAnimal dog = new Dog("Charlie");\n\t\tdog.sound(); // Output: Charlie is barking.\n\t\tdog.eat(); // Output: Charlie is eating.\n\n\t\tAnimal cat = new Cat("Molly");\n\t\tcat.sound(); // Output: Molly is meowing.\n\t\tcat.eat(); // Output: Molly is eating.\n\t}\n}\n"""\n在上面的例子中,Animal 是一个抽象类,它具有一个抽象方法 sound() 和一个非抽象方法 eat()。Dog 和 Cat 是 Animal 类的子类,它们继承了 sound() 方法,并实现了自己的声音。Dog 和 Cat 类还可以使用 Animal 类的非抽象方法 eat()。在 Main 类中,我们创建了一个 Dog 对象和一个 Cat 对象,并调用它们的方法来输出声音和吃的行为。
原文地址: https://www.cveoy.top/t/topic/px1f 著作权归作者所有。请勿转载和采集!