java接口详解
/**
* 功能: 用接口 实现多态
*/
package jiekou;
public class Jiekou3 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
CarShop carShop=new CarShop();
// 卖出一辆宝马
carShop.sellCar(new BMW());
// 卖出一辆奇瑞QQ
carShop.sellCar(new CheryQQ());
System.out.println("总收入为:"+carShop.getMoney());
}
}
// 汽车接口
interface Car
{
// 汽车名称
String getName();
// 获得汽车售价
int getPrice();
}
// 宝马
class BMW implements Car
{
@Override
public String getName() {
// TODO Auto-generated method stub
return "BMW";
}
@Override
public int getPrice() {
// TODO Auto-generated method stub
return 300000;
}
}
// 奇瑞QQ
class CheryQQ implements Car {
@Override
public String getName() {
// TODO Auto-generated method stub
return "CheryQQ";
}
@Override
public int getPrice() {
// TODO Auto-generated method stub
return 20000;
}
}
// 汽车出售店
class CarShop
{
// 售车收入
private int money=0;
// 卖出一辆车
public void sellCar(Car car)
{
System.out.println("车型:"+car.getName()+"单价: "
+car.getPrice());
// 增加售车收入
money+=car.getPrice();
}
// 返回 售车总收入
public int getMoney()
{
return money;
}
}
/*
* 这种方法的优势是: 假如要新增一辆车的销售,只需让新定义的类实现Car并实现
* 它的所有方法即可,无需对源代码做任何修改。
*
* 前期绑定:
* 在程序运行之前进行的绑定,由编译器和连接程序实现,又叫静态绑定。
* 比如static方法和final方法。注意这里也包括private方法,因为它是隐式的final。
*
* 后前绑定:
* 在程序运行时根据对象的类型进行的绑定,由方法调用机制实现。因此又叫做动态绑定,或者运行时
* 绑定,除了前期绑定外的所有方法都属于后前绑定。
*/
本文档为【java接口详解】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。