Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

做菜 #225

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/main/java/com/github/hcsp/polymorphism/Main.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ public class Main {
// 提取他们的公共代码到`菜`中,完成重构
// 注意不要修改各个菜的烹饪步骤
public static void main(String[] args) {
菜[] 菜们 = new 菜[] {new 西红柿炒鸡蛋(), new 清炒菜心(), new 煎牛排()};
菜[] 菜们 = new 菜[]{new 西红柿炒鸡蛋(), new 清炒菜心(), new 煎牛排()};
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

名称 '菜们' 必须匹配表达式: '^[a-z][a-zA-Z0-9]*$' 。

for (菜 一个菜 : 菜们) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

名称 '一个菜' 必须匹配表达式: '^[a-z][a-zA-Z0-9]*$' 。

一个菜.做一个菜();
}
Expand Down
20 changes: 13 additions & 7 deletions src/main/java/com/github/hcsp/polymorphism/清炒菜心.java
Original file line number Diff line number Diff line change
@@ -1,13 +1,19 @@
package com.github.hcsp.polymorphism;

public class 清炒菜心 {
public void 做个清炒菜心() {
System.out.println("洗炒锅");
System.out.println("倒一点点油");
public class 清炒菜心 extends 菜 {
@Override
public void 倒油() {
System.out.println("倒一丢丢油");
}

@Override
public void 开始烹饪() {
System.out.println("放青菜");
System.out.println("炒啊炒啊炒");
System.out.println("放酱油");
System.out.println("放盐");
System.out.println("香喷喷的清炒菜心出锅啦");
}

@Override
public void 出锅() {
System.out.println("香喷喷的清炒青菜出锅啦");
}
}
18 changes: 15 additions & 3 deletions src/main/java/com/github/hcsp/polymorphism/煎牛排.java
Original file line number Diff line number Diff line change
@@ -1,13 +1,25 @@
package com.github.hcsp.polymorphism;

public class 煎牛排 {
public void 煎个牛排() {
public class 煎牛排 extends 菜 {
@Override
public void 洗锅() {
System.out.println("洗煎锅");
System.out.println("倒油");
}

@Override
public void 开始烹饪() {
System.out.println("放牛排");
System.out.println("煎啊煎啊煎");
}

@Override
public void 放佐料() {
System.out.println("放胡椒粉");
System.out.println("放盐");
}

@Override
public void 出锅() {
System.out.println("香喷喷的煎牛排出锅啦");
}
}
18 changes: 13 additions & 5 deletions src/main/java/com/github/hcsp/polymorphism/菜.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,21 @@ public class 菜 {
出锅();
}

public void 洗锅() {}
public void 洗锅() {
System.out.println("洗锅");
}

public void 倒油() {}
public void 倒油() {
System.out.println("倒油");
}

public void 开始烹饪() {}
public void 开始烹饪() {
}

public void 放佐料() {}
public void 放佐料() {
System.out.println("放盐");
}

public void 出锅() {}
public void 出锅() {
}
}
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
package com.github.hcsp.polymorphism;

public class 西红柿炒鸡蛋 {
public void 做个西红柿炒鸡蛋() {
System.out.println("洗炒锅");
System.out.println("倒油");
public class 西红柿炒鸡蛋 extends 菜 {
@Override
public void 开始烹饪() {
System.out.println("放鸡蛋");
System.out.println("放西红柿");
System.out.println("炒啊炒啊炒");
System.out.println("放盐");
}

@Override
public void 出锅() {
System.out.println("香喷喷的西红柿炒鸡蛋出锅啦");
}
}