码迷,mamicode.com
首页 > 其他好文 > 详细

面向对象的理解

时间:2016-02-24 20:57:19      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:

Java中面向对象的理解:

面向对象是一种设计程续,部署程序的思路,能将程序中的各个功能细化。有封装,继承,多态三特点:

public class Transformer {
//变形金刚使用的武器接口
private Weapon w;//默认 null 值

/*
* 对成员变量赋值的方法,
* 把接收的武器对象,赋给变量w
*/
public void setWeapon(Weapon w) {
this.w = w;
}

public void attack() {
if(w == null) {
System.out.println("用牙咬~~");
return;
}

//用武器进攻
String type = "";
switch(w.getType()) {//向w接口发送getType()调用指令
case Weapon.TYPE_COLD:
type = "冷兵器";
break;
case Weapon.TYPE_HEAT:
type = "热兵器";
break;
case Weapon.TYPE_NUCLEAR:
type = "核武器";
break;
}

//向w接口发送getName()调用指令
System.out.println(
"使用"+type+w.getName()+"进攻");

//向w接口发送kill()调用指令
//由具体接入的武器来执行这个方法
w.kill();
}
}



然后

public interface Weapon {
//public static final 可以省略
int TYPE_COLD  =1;
int TYPE_HEAT  =2;
int TYPE_NUCLEAR =3;

//public abstract 可以省略
void kill(); 
String getName();
int getType();
}


public class Ak47 implements Weapon{


@Override
public void kill() {
System.out.println("??");
}


@Override
public String getName() {
return "Ak47";
}


@Override
public int getType() {
return Weapon.TYPE_HEAT;
}


}

面向对象的理解

标签:

原文地址:http://www.cnblogs.com/gentspy/p/5214255.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!