Java日誌第22天 2020.7.27
阿新 • • 發佈:2020-07-27
類作為成員變數型別
public class Hero { private String name; private int age; private Weapon weapon; public Hero(){ } public Hero(String name, int age, Weapon weapon) { this.name = name; this.age = age; this.weapon = weapon; } public void attack(){ System.out.println(age+ "歲的" + name + "使用" + weapon.getWeaponName()+"進行攻擊"); } 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 class Weapon { private String weaponName; public Weapon(){ } public Weapon(String weaponName){ this.weaponName = weaponName; }public String getWeaponName() { return weaponName; } public void setWeaponName(String weaponName) { this.weaponName = weaponName; } }
public class DemoMain { public static void main(String[] args) { Hero hero = new Hero(); hero.setName("亞瑟"); hero.setAge(15); hero.setWeapon(new Weapon("大寶劍")); hero.attack(); } }
結果如下:
介面作為成員變數型別
public interface Skill { public void realseSkill(); }
public class Hero { private String name; private Skill skill; public Hero(){ } public Hero(String name, Skill skill) { this.name = name; this.skill = skill; } public void attack(){ System.out.print(name + "使用"); skill.realseSkill(); System.out.println("釋放技能完成!"); } 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 class DemoMain { public static void main(String[] args) { Hero hero = new Hero(); hero.setName("亞瑟"); Skill skill = new Skill() { @Override public void realseSkill() { System.out.println("震雷削"); } }; hero.setSkill(skill); hero.attack(); } }
介面作為方法的引數或返回值
import java.util.ArrayList; import java.util.List; public class DemoInterface { public static void main(String[] args) { //左邊是介面名稱,右邊是實現類名稱,這是多型寫法 List<String> list = new ArrayList<>(); list = addNames(list); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } } public static List<String> addNames(List<String> list){ list.add("迪麗熱巴"); list.add("古力娜扎"); list.add("馬爾扎哈"); list.add("沙揚娜拉"); return list; } }
結果如下:
今天的內容很簡單,但應用到以前的知識還是很多的遺忘,有些程式碼的過程有些模糊用法。
不能這樣啊啊,還是要多多複習,熟練掌握用法,不能應用到稍微複雜的案例是就搞不清用法。
明天開始Object這個最高父類的學習了!