Java常见编程练习题-面向对象编程习题

按如下要求完成编程:

假定采用面向对象程序设计方法利用Java语言设计开发一个动物管理软件。该软件类体系结构描述如下:

(1)有一个类Animal,该类具有三个属性描述动物的特征,一个move方法描述动物的行为。类Bird、Fish为Animal类的子类,在这两个类中重写了父类中的move方法;

(2)有一个接口AnimalOperator,该接口中具有一个抽象方法AddAnimal类描述添加动物的功能,其中方法具有一个形参类型为Animal类(表示要添加的动物对象),方法无返回值。类AnimalOperatorImpl实现了接口AnimalOperator。

(3)编写测试类AnimalTest,实现父类的引用指向子类的对象,通过父类的引用调用子类对象的方法;实现接口的引用指向实现类的对象,通过接口的引用调用实现类的方法。

public class Animal {
		private int height ;
		private int weight ;
		private String kind ;
		public Animal() {	
		}
		public void setHeight(int height) {
			this.height = height; 
		}
		public int getHeight() {
			return height;
		}
		public void setWeight(int weight) {
			this.weight = weight; 
		}
		public int getWeight() {
			return weight;
		}
		public void setKind(String kind) {
			this.kind = kind; 
		}
		public String getHeight() {
			return kind;
		}
		public void move() {
				System.out.println("Animal is moving");
		}


}
public class Bird extends Animal{
	public void move() {
		System.out.println("Bird is moving");
}
}
public class Fish extends Animal{
	public void move() {
		System.out.println("Fish is moving");
}
}
public interface AnimalOperator {
	public abstract void AddAnimal(Animal c);

}
public class AnimalOperatorImpl implements AnimalOperator{
	public void AddAnimal(Animal c) {
		System.out.println("Animal is moving");
	}	
}
public class AnimalTest {
	public static void main(String[] args) {	
		Animal a1 = new Fish();
		Animal a2 = new Bird();
		a1.move();	
		a2.move();
		AnimalOperatorImpl a3 = new AnimalOperatorImpl();
		a3.AddAnimal(null);
	}
}

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
java 习题集包括有答案 引 言 6 第一章 JAVA基础 7 一、填空题 7 二、判断题 9 三、选择题 9 四、程序阅读题 26 第二章 控制结构 32 一、选择题 32 二、填空题 48 三、判断题 50 四、程序阅读题 51 五、编程题 55 第三章 字符串 59 一、选择题 59 二、填空题 63 三、判断题 64 四、编程题 65 第四章 数组 66 一、选择题 66 二、判断题 69 三、填空题 70 四、编程题 71 第五章 类和对象 73 一、选择题 73 二、填空题 79 三、程序填空 80 四、问答题 93 五、判断题 94 六、编程题 94 第六章 面向对象程序设计 97 一、选择题 97 二、填空题 118 三、判断题 120 四、编程题 123 第七章 数据库的连接 129 一、选择题 129 二、填空题 131 三、判断题 131 四、编程题 131 第八章 多线程 133 一、填空题 133 二、选择题 134 三、多项选择 147 四、判断题 147 五、程序分析题 148 六、程序设计题 149 第九章 异常处理 151 一、选择题 151 二、填空题 155 三、判断题 157 四、程序阅读题 158 五、程序题 163 第十章 文件操作 165 一、选择题 165 二、填空题 170 三、判断题 174 四、读程序题 177 五、问答题 182 六、编程题 183 第十一章GUI界面设计 185 一、选择题 185 二、填空题 194 三、判断题 196 四、程序填空 197 五、简答题 214 六、编程题 214 参考答案 230 第一章 java基础 230 一、填空题 230 二、判断题 232 三、选择题 232 四、程序阅读题 232 第二章 控制结构 233 一、选择题 233 二、填空题 233 三、判断题 235 四、程序阅读题 235 五、编程题 236 第三章 字符串 255 一、选择题 255 二、填空题 255 三、判断题 255 四、编程题 255 第四章 数组 265 一、选择题 265 二、判断题 265 三、填空题 266 四、编程题 266 第五章 类和对象 269 一、选择题 269 二、填空题 270 三、程序填空 271 五、判断题 274 六、编程题 274 第六章 面向对象程序设计 293 一、选择题 293 二、填空题 294 三、判断题 295 四、编程题 296 第七章 数据库的连接 352 一、选择题 352 二、填空题 352 三、判断题 353 四、编程题 353 第八章 多线程 356 一、填空题 356 二、选择题 357 三、多项选择 357 四、判断题 357 五、程序分析题 357 六、程序设计题 357 第九章 异常处理 391 一、选择题 391 二、填空题 391 三、判断题 392 四、程序阅读题 392 五、程序题 393 第十章 文件操作 396 一、选择题 396 二、填空题 397 三、判断题 398 四、读程序题 398 五、问答题 399 六、编程题 401 第十一章 GUI界面设计 417 一、选择题 417 二、填空题 417 三、判断题 419 四、程序填空 419 五、简答题 420 六、编程题 422
Java语言程序设计测试题改错题归类是一种常见的考察学生对Java语法和编程概念理解的方式。在这种测试中,通常会给出一段有错误的Java代码,要求学生找出并修复其中的错误。根据错误的类型和出现的位置,可以将这些改错题归类为以下几类: 1. 语法错误:这类错误是最常见的,包括拼写错误、缺少分号、括号不匹配等。学生需要仔细检查代码,找出并修复这些语法错误。 2. 逻辑错误:逻辑错误是指代码在语法上没有错误,但是实现的逻辑有问题,导致程序运行结果不符合预期。学生需要分析代码逻辑,找出并修复这些逻辑错误。 3. 数据类型错误:这类错误是指变量的数据类型与操作不匹配,例如将字符串赋值给整型变量、使用未初始化的变量等。学生需要检查变量的数据类型,并进行必要的类型转换或初始化操作。 4. 方法调用错误:这类错误是指方法的调用方式或参数传递有误,导致方法无法正常执行或返回结果不正确。学生需要检查方法的调用位置和参数传递方式,并进行必要的修正。 5. 异常处理错误:这类错误是指对异常情况的处理不当,例如没有捕获异常、没有正确处理异常等。学生需要添加必要的异常处理代码,保证程序在出现异常时能够正常运行。 6. 其他错误:除了以上几类错误外,还可能存在其他类型的错误,例如代码的可读性差、命名不规范等。学生需要根据具体情况进行相应的改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员Ale-阿乐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值