Java 面向对象 之 多态实例 孩子吃水果
http://www.verejava.com/?id=16992843565554
/** 题目: 孩子吃(苹果,葡萄,芒果) 思路: 1. 抽象出类 : 孩子(Baby), 苹果(Apple),葡萄(Grape) 2. 找出类的关系: 苹果,葡萄 -> 孩子 3. 找出属性: 孩子(姓名,苹果引用,葡萄引用) 苹果(名称) 葡萄(名称) 4. 找出方法: 孩子吃(eat)苹果或者葡萄 */ public class Polymorphism2 { public static void main(String[] args) { //实例化一个Baby Baby baby = new Baby("李明"); //实例化一个苹果 和 一个葡萄 Apple apple = new Apple("红富士"); Grape grape = new Grape("黑葡萄"); Mango mango = new Mango("大芒果"); //李明吃苹果和葡萄 baby.eat(apple); System.out.println(baby.getName() + " 高兴的说我吃了 " + baby.getApple().getName()); baby.eat(grape); System.out.println(baby.getName() + " 高兴的说我吃了 " + baby.getGrape().getName()); baby.eat(mango); System.out.println(baby.getName() + " 高兴的说我吃了 " + baby.getMango().getName()); } } class Baby { private Apple apple; private Grape grape; private Mango mango; private String name; public Baby(String name) { this.name = name; } public String getName() { return this.name; } public Apple getApple() { return this.apple; } public Grape getGrape() { return this.grape; } public Mango getMango() { return this.mango; } //吃苹果 public void eat(Apple apple) { this.apple = apple; } //吃葡萄 public void eat(Grape grape) { this.grape = grape; } //吃芒果 public void eat(Mango mango) { this.mango = mango; } } class Apple { private String name; public Apple(String name) { this.name = name; } public String getName() { return this.name; } } class Grape { private String name; public Grape(String name) { this.name = name; } public String getName() { return this.name; } } class Mango { private String name; public Mango(String name) { this.name = name; } public String getName() { return this.name; } }
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
SQL Serever学习9——基础查询语句
SQL语言概述 SQL是结构化查询语言(Structure Query Language),1974年提出,1979年被IBM实现,SQL语言已经成为关系型数据库的标准语言。 包括: DDL数据定义语言 语句有CREATE ,ALTER ,DROP,操作表,视图,触发器,存储过程 DML数据操作语言 语句有SELECT ,INSERT , UPDATE , DELETE,用于检索和操作数据 DCL数据控制语言 语句有GRANT , DENY , REVOKE,只有sysadmin,数据库创建者,拥有者,安全管理员有权利执行,用来设置或更改数据库用户或角色权限 流程控制 常用语句有BEGIN...END , IF...ELSE , WHILE , BREAK , GOTO , WAITFOR , RETURN等语 逻辑运算符 AND OR NOT ALL,所有表达式为true才为true ANY,表达式中一个为true则为true BETWEEN ,在某个范围内则为true EXISTS IN ,操作数为表达式列表中的一个则为true。 语句基本格式 SELECT * FROM 表名 W...
- 下一篇
Java 面向对象 之 多态实例2
http://www.verejava.com/?id=16992846385655 /** 题目: 孩子吃 水果(苹果,葡萄,芒果,菠萝) 思路: 1. 抽象出类 : 孩子(Baby), 水果(Fruit)(苹果(Apple),葡萄(Grape),芒果(Mango)) 2. 找出类的关系: 水果 -> 孩子 (苹果,葡萄,芒果) 是 水果的分类 3. 找出属性: 孩子(姓名,水果引用) 4. 找出方法: 孩子吃(eat)水果 子类->父类的转换 作用 :解耦 也就是降低类与类之间的耦合度 提供可扩展性 */ public class Polymorphism3 { public static void main(String[] args) { //实例化一个Baby Baby baby = new Baby("李明"); //实例化一个苹果 和 一个葡萄 Apple apple = new Apple("红富士"); Grape grape = new Grape("黑葡萄"); Mango mango = new Mango("大芒果"); PineApple pin...
相关文章
文章评论
共有0条评论来说两句吧...