java实验3.(1)类的继承性和多态性
来源:互联网 发布:nginx if break 编辑:程序博客网 时间:2024/06/05 04:13
需求:编写一个程序(Fruit.java),其中有三个类:Fruit,Orange、Apple,其中,Orange、Apple是Fruit的子类:
(1)类Fruit有eat()和main()(入口函数)两个方法,没有数据域,其中eat()中用this.getClass()显示当前对象的类名。 main()中随机生成这三种对象(用for和switch语句),共生成20个(把20定义为常量)对象,并用Fruit数组存放,然后用foreach循环对所有这些对象执行eat。
(2)类Orange有一个方法eat,没有数据域,其中,eat()显示" The orange tastes a little sour"。
(3)类Apple没有数据域和方法。
基本思路:要求非常基础,有几个点需要注意:
提示: 随机数产生方法
import java.util.Random; Random rnd= new Random(50); // 局部变量rnd初始化50为种子 int n= rnd.nextInt(100); // 返回0~99之间的随机数完整代码如下:
import java.util.Random;public class Fruit {void eat() {System.out.println("Eat "+this.getClass());}public static void main(String args[]){Fruit[] fruits=new Fruit[20];//定义对象Random rnd=new Random(1);//设置初始化数据为1for(int i=0;i<20;i++){int num=rnd.nextInt(3);//产生0-2之间的数据Fruit fruit = null;switch(num){//根据随机数,定义不同的对象case 0: fruit=new Fruit();break;case 1: fruit=new Orange();break;case 2:fruit=new Apple();break;}fruits[i]=fruit;}for(Fruit f:fruits){//遍历数组,调用eat方法f.eat();}}}class Orange extends Fruit{void eat(){System.out.println("The orange tastes a little sour");}}class Apple extends Fruit{}之前犯了一个错误,加了一个package lab3的声明。
后来Java Fruit时提示找不到主类,还以为环境变量出问题了。其实是因为找不到这个这个包。
0 0
- java实验3.(1)类的继承性和多态性
- java中类的继承性和多态性实例
- C++类的继承性和多态性
- 类的继承和多态性
- 类的继承和多态性
- Java实验3 类的多态性和接口
- 演示java面向对象的核心特性(类的封装性,继承性和多态性)
- java 简述类的封装性、继承性、多态性
- JAVA 类的继承/抽象/接口/多态性
- 面向对象的继承性和多态性
- Java 继承性与多态性
- Java运行时多态性:继承和接口的实现
- C++多态性和继承性
- Java实验2 类的继承性
- 类的继承与多态性
- 简单的理解 类的继承 和 多态性
- 简单的理解 类的继承 和 多态性
- JAVA多态性的实现-java实验报告
- 【Java学习笔记】08.String和StringBuffer
- easyUI自定义icon
- 动态栈模拟实现
- mybatis中的#和$的区别
- 通过Hook技术对浏览器HTTPS劫持
- java实验3.(1)类的继承性和多态性
- office 2016 只安装部分组件
- VUE2.0 全套 demo 讲解 基础 5(class 与 style 绑定)
- 给小白程序员的几点建议
- Java面向对象笔记(二)封装
- win03iis6与tomcat68共用80端口
- 链接数据库
- 第三章:java语言基础(java知识点)
- 单例模式