Skip to content

Commit 014a683

Browse files
committed
feat: Java 抽象类,Java 多态
1 parent 2cc614a commit 014a683

19 files changed

Lines changed: 242 additions & 3 deletions

File tree

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package com.wdbyte.oop.abs;
2+
3+
/**
4+
* @author niulang
5+
* @date 2023/04/17
6+
*/
7+
public abstract class AbsPerson {
8+
public int age = 22;
9+
10+
public void eat() {
11+
System.out.println("吃饭");
12+
}
13+
14+
public abstract void sleep();
15+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package com.wdbyte.oop.abs;
2+
3+
/**
4+
* @author niulang
5+
* @date 2023/04/17
6+
*/
7+
public class PersonTest {
8+
public static void main(String[] args) {
9+
AbsPerson absPerson = new Student();
10+
System.out.println(absPerson.age);
11+
absPerson.eat();
12+
absPerson.sleep();
13+
14+
Student student = new Student();
15+
Teacher teacher = new Teacher();
16+
sleep(student);
17+
sleep(teacher);
18+
}
19+
20+
public static void sleep(AbsPerson person) {
21+
person.sleep();
22+
}
23+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package com.wdbyte.oop.abs;
2+
3+
/**
4+
* @author niulang
5+
* @date 2023/04/17
6+
*/
7+
public class Student extends AbsPerson {
8+
9+
@Override
10+
public void sleep() {
11+
System.out.println("学生上课不能睡觉");
12+
}
13+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package com.wdbyte.oop.abs;
2+
3+
/**
4+
* @author niulang
5+
* @date 2023/04/17
6+
*/
7+
public class Teacher extends AbsPerson {
8+
9+
@Override
10+
public void sleep() {
11+
System.out.println("老师教课时不能睡觉");
12+
}
13+
}

core-java-modules/core-java-base/src/main/java/com/wdbyte/oop/JavaInterface.java renamed to core-java-modules/core-java-base/src/main/java/com/wdbyte/oop/interfac/JavaInterface.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.wdbyte.oop;
1+
package com.wdbyte.oop.interfac;
22

33
/**
44
* @author niulang

core-java-modules/core-java-base/src/main/java/com/wdbyte/oop/JavaInterface2.java renamed to core-java-modules/core-java-base/src/main/java/com/wdbyte/oop/interfac/JavaInterface2.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.wdbyte.oop;
1+
package com.wdbyte.oop.interfac;
22

33
/**
44
* @author niulang

core-java-modules/core-java-base/src/main/java/com/wdbyte/oop/JavaInterface3.java renamed to core-java-modules/core-java-base/src/main/java/com/wdbyte/oop/interfac/JavaInterface3.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.wdbyte.oop;
1+
package com.wdbyte.oop.interfac;
22

33
/**
44
* @author niulang
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package com.wdbyte.oop.polymorphism;
2+
3+
/**
4+
* @author niulang
5+
* @date 2023/04/18
6+
*/
7+
public class AliyunOss implements Oss {
8+
@Override
9+
public void upload(String content) {
10+
try {
11+
Thread.sleep(10);
12+
} catch (InterruptedException e) {
13+
throw new RuntimeException(e);
14+
}
15+
System.out.println("文件已经上传到阿里云 OSS,内容:" + content);
16+
}
17+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package com.wdbyte.oop.polymorphism;
2+
3+
import java.util.Arrays;
4+
5+
public class Animal {
6+
public void makeSound() {
7+
System.out.println("动物发出叫声");
8+
}
9+
10+
public static void main(String[] args) {
11+
Animal cat = new Cat();
12+
Animal dog = new Dog();
13+
for (Animal animal : Arrays.asList(cat, dog)) {
14+
animal.makeSound();
15+
}
16+
}
17+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.wdbyte.oop.polymorphism;
2+
3+
public class Cat extends Animal{
4+
@Override
5+
public void makeSound(){
6+
System.out.println("喵喵喵");
7+
}
8+
}

0 commit comments

Comments
 (0)