java课程设计实验报告动物换位
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验主题:动物换位
1. 实验目的
1.1 掌握Java面向对象程序设计的基本思想和方法;
1.2 学习使用Java语言编写程序并进行调试;
1.3 加深对继承、多态等概念的理解。
2. 实验内容
2.1 设计一个动物类Animal,包括属性:尊称、芳龄、性莂等,并包括方法:eat()、run()等;
2.2 在Animal类的基础上,设计其他动物类,例如猫类Cat、狗类Dog,并且实现相关的方法;
2.3 设计一个动物换位的场景类,对不同种类的动物进行换位操作,观察调用不同对象的同一方法时的效果。
3. 实验原理
3.1 面向对象程序设计:将问题进行对象抽象,建立对象与对象之间的关系;
3.2 继承关系:利用继承关系实现不同类之间的共性和特性;
3.3 多态性:通过调用父类的引用指向子类对象,实现方法的动态绑定和多态的效果。
4. 实验步骤
4.1 设计动物类Animal,包括属性和方法的声明;
4.2 设计猫类Cat和狗类Dog,继承Animal类,并重写eat()和
run()方法;
4.3 设计动物换位的场景类AnimalSwap,创建不同种类的动物对象,并进行方法的调用。
5. 实验代码
Animal类:
```java
class Animal {
String name;
int age;
char sex;
public Animal(String name, int age, char sex) {
= name;
this.age = age;
this.sex = sex;
}
public void eat() {
System.out.println(name + " is eating.");
}
public void run() {
System.out.println(name + " is running."); }
}
```
Cat类:
```java
class Cat extends Animal {
public Cat(String name, int age, char sex) {
super(name, age, sex);
}
Override
public void eat() {
System.out.println(name + " is eating fish."); }
Override
public void run() {
System.out.println(name + " is jumping."); }
}
```
Dog类:
```java
class Dog extends Animal {
public Dog(String name, int age, char sex) {
super(name, age, sex);
}
Override
public void eat() {
System.out.println(name + " is eating bone."); }
Override
public void run() {
System.out.println(name + " is barking.");
}
}
```
AnimalSwap类:
```java
public class AnimalSwap {
public static void m本人n(String[] args) { Animal cat = new Cat("Tom", 3, 'M'); Animal dog = new Dog("Mike", 5, 'F');
cat.eat();
dog.eat();
cat.run();
dog.run();
}
}
```
6. 实验结果
运行AnimalSwap类,输出结果:
```
Tom is eating fish.
Mike is eating bone.
Tom is jumping.
Mike is barking.
```
7. 实验分析
通过实验可知,通过调用不同对象的eat()和run()方法时,虽然调用的是同一个方法,但实际执行的是不同类中重写的方法,表现出多态的效果。
8. 总结与展望
本次实验通过动物换位的场景,让学生了解了Java面向对象程序设计的基本思想和方法,加深了对继承、多态等概念的理解。未来,可以进一步设计更复杂的场景,加深学生对面向对象程序设计的理解和应用能力。
以上是本次实验的报告内容,谢谢老师和同学们的观看。