调用系统的照相功能
2013-03-28 22:54
134 查看
多态:对象在运行中的多种形态。
多态的代码体现:1.继承或实现了类的接口 2.重写了父类的方法 3.父类引用或接口指向子类对象
子类只能重写父类的实例方法:
public static 静态方法 构造函数 属性都不能重写
图例:
/* 面向对象思想定义小动物属性 */ abstract class Animal{ //注意abstract要写在class前面 public abstract void shout(); public abstract void work(); //如果这里没有第二个方法,则要用到最后的判断语句进行判断 } class Dog extends Animal{ public void shout(){ System.out.println("汪汪"); } public void work(){ //复写父类方法 System.out.println("看家"); } } class Cat extends Animal{ public void shout(){ System.out.println("喵喵"); } public void work(){ //复写父类方法 System.out.println("抓老鼠"); } public void eat(){ System.out.println("吃鱼"); } } class AnimalDo{ //新建函数包含了shout和work方法,提高代码复用性 public void Do(Animal a){ //括号里父类引用指向子类对象 a.shout(); a.work(); } } class Demo11{ public static void main(String[] args){ AnimalDo ad = new AnimalDo(); ad.Do(new Dog()); ad.Do(new Cat()); Cat c = new Cat(); //function(new Dog());//匿名对象调用函数 } } /* 当父类方法不完整时,用以下函数判断 public static void function(Animal a){ a.shout(); if (a instanceof Cat){ Cat c=(Cat)a; c.work(); } else if (a instanceof Dog){ Dog d =(Dog)a; d.kanjia(); } } */
7. 主板和USB 接口之间的案例 (********)
|-- 接口引用指向子类对象,实现主板功能的扩展
/* 主板的实例 1. 描述主板 开机,使用USB设备 2. 描述USB接口 定义2个功能,规则 读取数据,写入数据 3. 描述网卡,网卡接入USB接口上 网卡实现USB接口 */ interface USB{ public abstract void read(); public abstract void write();//定义接口的2个功能 } class Print implements USB{ public void read(){ System.out.println("读取打印机数据"); } public void write(){ System.out.println("写入打印机数据"); //覆写接口的2个方法,使子类实例化 } } class Iphone implements USB{ public void read(){ System.out.println("读取苹果5数据"); } public void write(){ System.out.println("写入苹果5数据");//覆写接口的2个方法,使子类实例化 } } class NetCard implements USB{ public void read(){ System.out.println("读取网卡数据"); } public void write(){ System.out.println("写入网卡数据");//覆写接口的2个方法,使子类实例化 } } class MainBoard{ //建立功能函数提高代码的复用性 public void openPower() { System.out.println("开机了"); } /* 使用USB设备,但是什么设备,先期我是不知道 参数,只能写成USB 接口 */ public void useUSB(USB u)//父类引用指向子类对象 // USB u = new NetCard(); // USB u = new Print(); // USB u = null { if(null == u) //如果u的值为空 { System.out.println("没有设备"); return ; //这里if为判断语句,当u值为空时用return跳出 } else //如果不为空 u.read(); u.write();//调用2个方法 } } class Computer { public static void main(String[] args) { MainBoard mb = new MainBoard();//建立对象 mb.openPower(); mb.useUSB(null); mb.useUSB(new NetCard()); //匿名对象调用一次,不是只能调用一次 mb.useUSB(new Print()); mb.useUSB(new Iphone()); } }
8. 数据库中的开发体验,多态(*********)
9. 多态中,子父类中成员变量,成员函数,静态成员函数,静态成员变量的特点
|-- 非静态成员函数,编译看左边,运行看右边
|-- 其他情况,编译看左边,运行看左边
相关文章推荐
- Android调用系统自带功能( 照相,浏览照片,打开浏览器,拨打电话)
- 调用系统的照相,相册,裁剪功能--activity实现
- Android调用系统自带功能( 照相,浏览照片,打开浏览器,拨打电话)
- Android 通讯录学习笔记之——目标:调用系统通讯录的编辑功能
- ios-王云鹤 调用ios系统功能---------------打电话、发短信、发邮件
- ios 调用系统发短信以及打电话功能
- 库函数调用和系统功能调用/文件句柄和文件指针/指针和引用/C runtime lib和虚拟机
- 调用系统相机 图库 截图功能。实现大图片裁剪保存
- 安卓调用系统分享功能
- Android获取手机通讯录调用系统短信功能
- linux下增加一个新的系统调用实现pstree功能
- Android调用系统各种功能
- android 通过Intent action 调用系统功能
- Winform调用系统的剪切,复制,粘贴文件功能
- SAP RFC 浅谈基于SAP系统的远程功能调用
- 调用系统拍照、录像、录音功能并播放的demo
- android 通过Intent action 跳转到系统页面,调用系统功能以及action动
- Winform调用系统的剪切,复制,粘贴文件功能
- ios 调用系统发短信以及打电话功能
- 调用系统的短信和邮件分享功能