类作为成员变量类型和接口作为成员变量类型
类作为成员变量类型
代码:
武器类
public class Weapon {
private String code;
public Weapon() {
}
public Weapon(String code) {
this.code = code;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
}
英雄类
public class Hero {
private String name;//英雄的姓名
private int age;//年龄
private Weapon weapon;//武器
public Hero(String name, int age, Weapon weapon) {
this.name = name;
this.age = age;
this.weapon = weapon;
}
public Hero() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Weapon getWeapon() {
return weapon;
}
public void setWeapon(Weapon weapon) {
this.weapon = weapon;
}
//英雄攻击的方法
public void method(){
System.out.println("名字"+name+"年龄"+age+"用"+weapon.getCode()+"攻击敌人");
}
}
测试类
public class test {
public static void main(String[] args) {
Hero hero = new Hero();
hero.setName("张三");
hero.setAge(20);
Weapon d = new Weapon("大宝剑");
hero.setWeapon(d);
hero.method();
}
}
运行结果:
接口作为成员变量类型
接口:
public interface Skill {
public abstract void ability();
}
英雄类
public class Hero {
private String name;//英雄的姓名
private Skill skill;
public Hero(String name, Skill skill) {
this.name = name;
this.skill = skill;
}
public Hero() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Skill getSkill() {
return skill;
}
public void setSkill(Skill skill) {
this.skill = skill;
}
//英雄攻击的方法
public void method(){
System.out.println("英雄的名字"+name+"施法技能");
skill.ability();
System.out.println("施法成功");
}
}
测试
public class test {
public static void main(String[] args) {
Hero hero = new Hero();
hero.setName("张三");
hero.setSkill(new Skill() {
@Override
public void ability() {
System.out.println("bu bu bu");
}
});
hero.method();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本