Skip to content

Commit 2cc614a

Browse files
committed
feat: Java 接口
1 parent d5dc3eb commit 2cc614a

10 files changed

Lines changed: 223 additions & 2 deletions

File tree

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
- [Java 多维数组](https://www.wdbyte.com/java/java-array-mul/)
4545
- [Java StringBuilder](https://www.wdbyte.com/java/java-stringbuilder/)
4646
- [Java 继承](https://www.wdbyte.com/java/extends/)
47+
- [Java 接口](https://www.wdbyte.com/java/interface/)
4748

4849
## 🌿 SpringBoot 2.x 教程
4950

core-java-modules/core-java-base/pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,11 @@
99
<artifactId>core-java-base</artifactId>
1010
<name>Archetype - core-java-base</name>
1111
<url>http://maven.apache.org</url>
12+
13+
<properties>
14+
<maven.compiler.source>17</maven.compiler.source>
15+
<maven.compiler.target>17</maven.compiler.target>
16+
</properties>
17+
18+
1219
</project>

core-java-modules/core-java-base/src/main/java/com/wdbyte/JavaArray.java renamed to core-java-modules/core-java-base/src/main/java/com/wdbyte/array/JavaArray.java

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

33
import java.util.ArrayList;
44
import java.util.Arrays;
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package com.wdbyte.array;
2+
3+
/**
4+
* @author niulang
5+
* @date 2023/03/25
6+
*/
7+
public class JavaArray2 {
8+
9+
public static void main(String[] args) {
10+
int[][] myArray = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
11+
for (int i = 0; i < myArray.length; i++) {
12+
for (int j = 0; j < myArray[i].length; j++) {
13+
System.out.print(myArray[i][j] + " ");
14+
}
15+
System.out.println();
16+
}
17+
System.out.println(myArray[0][0]); // 输出1
18+
System.out.println(myArray[0][1]); // 输出2
19+
System.out.println(myArray[1][0]); // 输出4
20+
21+
System.out.println("------------");
22+
23+
int intArray[][] = { { 1, 2, 3 }, { 4, 5 } };
24+
int cloneArray[][] = intArray.clone();
25+
// 输出:false
26+
System.out.println(intArray == cloneArray);
27+
28+
// 因为是浅拷贝,所以元素引用相同,输出 true
29+
System.out.println(intArray[0] == cloneArray[0]);
30+
System.out.println(intArray[1] == cloneArray[1]);
31+
}
32+
}

core-java-modules/core-java-base/src/main/java/com/wdbyte/JavaArray3.java renamed to core-java-modules/core-java-base/src/main/java/com/wdbyte/array/JavaArray3.java

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

33
/**
44
* @author niulang
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package com.wdbyte.array;
2+
3+
/**
4+
* 锯齿数组
5+
* @author niulang
6+
* @date 2023/03/25
7+
*/
8+
public class JavaArray4 {
9+
10+
public static void main(String[] args) {
11+
int[][] arrName1 = new int[][] {
12+
new int[] {10, 20, 30, 40},
13+
new int[] {50, 60, 70, 80, 90, 100},
14+
new int[] {110, 120}
15+
};
16+
17+
int[][] arrName2 = {
18+
new int[] {10, 20, 30, 40},
19+
new int[] {50, 60, 70, 80, 90, 100},
20+
new int[] {110, 120}
21+
};
22+
23+
int[][] arrName3 = {
24+
{10, 20, 30, 40},
25+
{50, 60, 70, 80, 90, 100},
26+
{110, 120}
27+
};
28+
29+
int[][] jaggedArray = new int[3][];
30+
jaggedArray[0] = new int[] {1, 2, 3};
31+
jaggedArray[1] = new int[] {4, 5};
32+
jaggedArray[2] = new int[] {6, 7, 8, 9};
33+
34+
for (int i = 0; i < jaggedArray.length; i++) {
35+
for (int j = 0; j < jaggedArray[i].length; j++) {
36+
System.out.print(jaggedArray[i][j] + " ");
37+
}
38+
System.out.println();
39+
}
40+
41+
}
42+
}

core-java-modules/core-java-base/src/main/java/com/wdbyte/oop/JavaExtends.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@ public void study() {
3434
System.out.println("学习");
3535
}
3636

37+
@Override
38+
public void eat() {
39+
System.out.println("吃大米");
40+
}
41+
3742
@Override
3843
public void sleep() {
3944
System.out.println("上课时不能睡觉");
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
package com.wdbyte.oop;
2+
3+
/**
4+
* @author niulang
5+
* @date 2023/04/13
6+
*/
7+
public class JavaInterface {
8+
9+
public static void main(String[] args) {
10+
MyInterface.staticMethod();
11+
System.out.println(MyInterface.param);
12+
}
13+
}
14+
15+
interface MyInterface {
16+
String param = null;
17+
void method1();
18+
void method2();
19+
// 默认方法
20+
default void defaultMethod() {
21+
System.out.println("default method");
22+
}
23+
// 私有方法
24+
private void privateMethod() {
25+
System.out.println("private method");
26+
}
27+
// 静态方法
28+
static void staticMethod() {
29+
System.out.println("static method");
30+
}
31+
// 私有静态方法
32+
private static void privateStaticMethod() {
33+
System.out.println("private static method");
34+
}
35+
}
36+
interface IMobilePhone{
37+
void mehtod1();
38+
}
39+
interface MyInterface2{
40+
void mehtod2();
41+
}
42+
class IPhone14 implements IMobilePhone{
43+
@Override
44+
public void mehtod1() {
45+
}
46+
47+
}
48+
class Xiaomi14 implements IMobilePhone{
49+
@Override
50+
public void mehtod1() {
51+
}
52+
53+
}
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
package com.wdbyte.oop;
2+
3+
/**
4+
* @author niulang
5+
* @date 2023/04/13
6+
*/
7+
public class JavaInterface2 {
8+
public static void main(String[] args) {
9+
//XPhone xPhone = new XPhone();
10+
//xPhone.powerUp();
11+
//xPhone.call();
12+
}
13+
}
14+
15+
16+
17+
/**
18+
* 手机系统功能接口
19+
*/
20+
interface IMobilePhoneSystem{
21+
// 开机
22+
void powerUp();
23+
// 显示
24+
void display();
25+
// 声音
26+
void sound();
27+
}
28+
29+
/**
30+
* 手机基本功能
31+
*/
32+
interface IMobilePhoneBasicFunction extends IMobilePhoneSystem {
33+
// 打电话
34+
void call();
35+
// 发短信
36+
void sendMessage();
37+
}
38+
39+
40+
class XPhone implements IMobilePhoneBasicFunction{
41+
42+
@Override
43+
public void powerUp() {
44+
System.out.println("XPhone 开始开机");
45+
}
46+
47+
@Override
48+
public void display() {
49+
System.out.println("XPhone 开始显示");
50+
}
51+
52+
@Override
53+
public void sound() {
54+
System.out.println("XPhone 发出声音");
55+
}
56+
57+
@Override
58+
public void call() {
59+
System.out.println("XPhone 开始拨打电话");
60+
}
61+
62+
@Override
63+
public void sendMessage() {
64+
System.out.println("XPhone 开始发送短信");
65+
}
66+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package com.wdbyte.oop;
2+
3+
/**
4+
* @author niulang
5+
* @date 2023/04/14
6+
*/
7+
public class JavaInterface3 {
8+
public static void main(String[] args) {
9+
System.out.println(MyInterface.param);
10+
}
11+
interface MyInterface{
12+
String param = "https://www.wdbyte.com";
13+
}
14+
}
15+

0 commit comments

Comments
 (0)