java复习——继承应用
来源:互联网 发布:电脑应用程序加密软件 编辑:程序博客网 时间:2024/06/05 19:08
实现一个内衣商城中的内衣管理类
1.定义一个内衣类
2.定义一个内衣管理类
(1)实现进货功能
(2)可以输出所有内衣信息功能
3.使用继承实现一个可按单价排序输出所有内衣的功能
4.使用继承实现一个只输出女士内衣的功能
import java.util.Arrays;/** * * 继承应用 * */public class ExtendsDemo { public static void main(String[] args){ Underwear u1 = new Underwear("男士", "背心", 35.5f); Underwear u2 = new Underwear("女士", "胸垫", 98.0f); Underwear u3 = new Underwear("男士", "内裤", 188.8f); Underwear u4 = new Underwear("女士", "内裤", 298.0f); Underwear u5 = new Underwear("女士", "bra", 58.0f); UnderwearManager um1 = new UnderwearManager(); um1.add(u1); um1.add(u2); um1.add(u3); um1.add(u4); um1.add(u5); Underwear[] us1 = um1.getUnderwears(); for(Underwear u: us1){ System.out.println(u.getInfo()); } System.out.println("-------------排序子类------------"); //排序子类 PriceSortUnderwearManager ps = new PriceSortUnderwearManager(); ps.add(u1); ps.add(u2); ps.add(u3); ps.add(u4); ps.add(u5); Underwear[] us2 = ps.getUnderwears(); for(Underwear u: us2){ System.out.println(u.getInfo()); } System.out.println("------------女士内衣管理类------------"); //女士内衣管理类 WomenUnderwearManager wm = new WomenUnderwearManager(); wm.add(u1); wm.add(u2); wm.add(u3); wm.add(u4); wm.add(u5); Underwear[] u6 = wm.getUnderwears(); for(Underwear u: u6){ System.out.println(u.getInfo()); } }}/** * 内衣类 */class Underwear{ float price;//单价 String name;//名称 String sex;//男士或女士 public Underwear(String sex, String name, float price){ this.sex = sex; this.name = name; this.price = price; } public String getInfo(){ return sex + name + ", RMB" + price; }}/** * 内衣管理类 */class UnderwearManager{ private Underwear[] underwears = new Underwear[3]; private int count;//记录当前内衣数量,计数器 //添加内衣功能,实现进货功能 public void add(Underwear u){ if(count >= underwears.length){ //数组动态扩展 int newlen = (underwears.length * 3) / 2 + 1; underwears = Arrays.copyOf(underwears, newlen); } underwears[count] = u; count++; } //输出所有内衣的信息 public Underwear[] getUnderwears(){ Underwear[] us = new Underwear[count]; for(int i = 0; i < us.length; ++i){ us[i] = underwears[i]; } return us; }}//实现按单价排序的字类class PriceSortUnderwearManager extends UnderwearManager{ //重写父类方法 public Underwear[] getUnderwears(){ Underwear[] us = super.getUnderwears(); Underwear temp = null;//临时交换变量 for(int i = 0; i < us.length; ++i){ for(int j = 0; j < us.length - i - 1; ++j){ if(us[j].price > us[j].price){ temp = us[j]; us[j] = us[j + 1]; us[j + 1] = temp; } } } return us; }}//女士内衣管理类class WomenUnderwearManager extends UnderwearManager{ //重写父类方法 public Underwear[] getUnderwears(){ Underwear[] u = super.getUnderwears(); //创建一个UnderwearManager对象,用于存储女士内衣 UnderwearManager um = new UnderwearManager(); for(int i = 0; i < u.length; ++i){ if("女士".equals(u[i].sex)) um.add(u[i]); } return um.getUnderwears(); }}
0 0
- java复习——继承应用
- Java复习笔记(5)——继承
- Java复习——继承作业
- 黑马程序员—java基础复习—继承和接口
- Java基础复习---继承
- Java复习之继承
- java复习-继承
- java-继承(复习随笔)
- java继承复习要点总结
- Java基础复习:继承机制
- 黑马程序员——java复习总结——继承和接口
- 黑马程序员—— Java 基础 面向对象之继承 (复习)
- 【黑马程序员】方法、数组、面向对象、封装、继承——Java复习笔记
- Java——复习
- 关于Java继承的一些复习
- Java复习 9继承与多态
- JAVA基础笔记(复习)- 继承
- 《Java核心技术》复习笔记 - 第五章 继承
- sqlite3 触发器(分数和绩点同步更新)
- Java接入微信的时候提示配置失败解决办法
- kali2.0 开机resolv.conf消失解决办法
- 公司法
- Android 添加菜单
- java复习——继承应用
- PB流程图(FlowGraph)更新发布专题
- 超链接实现post方式提交
- 移动测试基础 android 中 dumpsys 命令使用
- Androidstudio配置本地Gradle
- P2738 [USACO4.1]篱笆回路Fence Loops
- JAVA四种线程池的使用
- Android Studio启动异常报错修复
- 高精度定位技术有哪些