面向对象的理解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象的理解相关的知识,希望对你有一定的参考价值。

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;
}


}

以上是关于面向对象的理解的主要内容,如果未能解决你的问题,请参考以下文章

PHP面向对象之选择工厂和更新工厂

Java中面向对象的三大特性之封装

python之路之前没搞明白4面向对象(封装)

谈谈你对面向对象的理解

python面向对象开发的自我理解

面向对象的三大特征,封装继承多态的个人理解以及代码分析