From d9e8de8d52c3db03ebf3109cb020f92ae4d3e49b Mon Sep 17 00:00:00 2001
From: liangduoduo666666 <798277403@qq.com>
Date: Thu, 13 Apr 2017 00:33:54 +0800
Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E7=AC=AC=E4=BA=94=E5=91=A8?=
=?UTF-8?q?=E4=BD=9C=E4=B8=9A=EF=BC=8C=E5=B9=B6=E8=B0=83=E6=95=B4=E9=A1=B9?=
=?UTF-8?q?=E7=9B=AE=E7=BB=93=E6=9E=84?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../zhouliang/week2/litestruts/struts.xml | 11 -
.../src/{week1 => basic}/ArrayList.java | 2 +-
.../src/{week1 => basic}/ArrayListTest.java | 2 +-
.../src/{week1 => basic}/BinaryTree.java | 2 +-
.../src/{week1 => basic}/BinaryTreeNode.java | 2 +-
.../src/{week1 => basic}/Iterator.java | 2 +-
.../{week4 => basic}/LRU/LRUPageFrame.java | 2 +-
.../LRU/LRUPageFrameTest.java | 2 +-
.../{week4 => basic}/LRU/MyLRUPageFrame.java | 2 +-
.../src/{week1 => basic}/LinkedList.java | 4 +-
.../src/{week1 => basic}/LinkedListTest.java | 2 +-
.../798277403/src/{week1 => basic}/List.java | 2 +-
.../798277403/src/{week1 => basic}/Queue.java | 2 +-
.../src/{week1 => basic}/QueueTest.java | 2 +-
.../798277403/src/{week1 => basic}/Stack.java | 2 +-
.../src/{week1 => basic}/StackTest.java | 2 +-
.../src/{week2 => basic}/array/ArrayUtil.java | 2 +-
.../{week2 => basic}/array/ArrayUtilTest.java | 2 +-
.../linkedlist/LinkedList.java | 2 +-
.../linkedlist/LinkedListTest.java | 4 +-
.../src/{week3 => basic}/linkedlist/List.java | 2 +-
.../798277403/src/basic/stack/StackUtil.java | 116 +++++++++++
.../src/basic/stack/StackUtilTest.java | 77 +++++++
.../{week3 => download}/DownloadThread.java | 6 +-
.../{week3 => download}/FileDownloader.java | 8 +-
.../{week3 => download}/api/Connection.java | 4 +-
.../api/ConnectionException.java | 2 +-
.../api/ConnectionManager.java | 2 +-
.../api/DownloadListener.java | 2 +-
.../impl/ConnectionImpl.java | 8 +-
.../impl/ConnectionManagerImpl.java | 8 +-
.../test/ConnectionTest.java | 9 +-
.../test/FileDownloaderTest.java | 11 +-
.../{week2 => }/litestruts/LoginAction.java | 2 +-
.../src/{week2 => }/litestruts/Struts.java | 4 +-
.../{week2 => }/litestruts/StrutsTest.java | 13 +-
.../src/{week2 => }/litestruts/View.java | 2 +-
.../src/mini_jvm/clz/AccessFlag.java | 25 +++
.../798277403/src/mini_jvm/clz/ClassFile.java | 65 ++++++
.../src/mini_jvm/clz/ClassIndex.java | 19 ++
.../src/mini_jvm/constant/ClassInfo.java | 24 +++
.../src/mini_jvm/constant/ConstantInfo.java | 29 +++
.../src/mini_jvm/constant/ConstantPool.java | 27 +++
.../src/mini_jvm/constant/FieldRefInfo.java | 54 +++++
.../src/mini_jvm/constant/MethodRefInfo.java | 55 +++++
.../mini_jvm/constant/NameAndTypeInfo.java | 45 +++++
.../mini_jvm/constant/NullConstantInfo.java | 13 ++
.../src/mini_jvm/constant/StringInfo.java | 26 +++
.../src/mini_jvm/constant/UTF8Info.java | 32 +++
.../src/mini_jvm/loader/ByteCodeIterator.java | 55 +++++
.../src/mini_jvm/loader/ClassFileLoader.java | 94 +++++++++
.../src/mini_jvm/loader/ClassFileParser.java | 130 ++++++++++++
.../mini_jvm/test/ClassFileloaderTest.java | 189 ++++++++++++++++++
.../src/mini_jvm/test/EmployeeV1.java | 28 +++
group24/798277403/src/mini_jvm/util/Util.java | 22 ++
.../798277403/src/week2/litestruts/struts.xml | 11 -
.../src/week4/loader/ClassFileLoader.java | 67 -------
.../src/week4/test/ClassFileloaderTest.java | 84 --------
.../798277403/src/week4/test/EmployeeV1.java | 29 ---
59 files changed, 1187 insertions(+), 265 deletions(-)
delete mode 100644 group24/798277403/out/production/zhouliang/week2/litestruts/struts.xml
rename group24/798277403/src/{week1 => basic}/ArrayList.java (99%)
rename group24/798277403/src/{week1 => basic}/ArrayListTest.java (98%)
rename group24/798277403/src/{week1 => basic}/BinaryTree.java (99%)
rename group24/798277403/src/{week1 => basic}/BinaryTreeNode.java (99%)
rename group24/798277403/src/{week1 => basic}/Iterator.java (90%)
rename group24/798277403/src/{week4 => basic}/LRU/LRUPageFrame.java (99%)
rename group24/798277403/src/{week4 => basic}/LRU/LRUPageFrameTest.java (98%)
rename group24/798277403/src/{week4 => basic}/LRU/MyLRUPageFrame.java (99%)
rename group24/798277403/src/{week1 => basic}/LinkedList.java (98%)
rename group24/798277403/src/{week1 => basic}/LinkedListTest.java (98%)
rename group24/798277403/src/{week1 => basic}/List.java (93%)
rename group24/798277403/src/{week1 => basic}/Queue.java (97%)
rename group24/798277403/src/{week1 => basic}/QueueTest.java (97%)
rename group24/798277403/src/{week1 => basic}/Stack.java (97%)
rename group24/798277403/src/{week1 => basic}/StackTest.java (97%)
rename group24/798277403/src/{week2 => basic}/array/ArrayUtil.java (99%)
rename group24/798277403/src/{week2 => basic}/array/ArrayUtilTest.java (99%)
rename group24/798277403/src/{week3 => basic}/linkedlist/LinkedList.java (99%)
rename group24/798277403/src/{week3 => basic}/linkedlist/LinkedListTest.java (95%)
rename group24/798277403/src/{week3 => basic}/linkedlist/List.java (89%)
create mode 100644 group24/798277403/src/basic/stack/StackUtil.java
create mode 100644 group24/798277403/src/basic/stack/StackUtilTest.java
rename group24/798277403/src/{week3 => download}/DownloadThread.java (83%)
rename group24/798277403/src/{week3 => download}/FileDownloader.java (96%)
rename group24/798277403/src/{week3 => download}/api/Connection.java (80%)
rename group24/798277403/src/{week3 => download}/api/ConnectionException.java (85%)
rename group24/798277403/src/{week3 => download}/api/ConnectionManager.java (89%)
rename group24/798277403/src/{week3 => download}/api/DownloadListener.java (76%)
rename group24/798277403/src/{week3 => download}/impl/ConnectionImpl.java (91%)
rename group24/798277403/src/{week3 => download}/impl/ConnectionManagerImpl.java (57%)
rename group24/798277403/src/{week3 => download}/test/ConnectionTest.java (88%)
rename group24/798277403/src/{week3 => download}/test/FileDownloaderTest.java (86%)
rename group24/798277403/src/{week2 => }/litestruts/LoginAction.java (97%)
rename group24/798277403/src/{week2 => }/litestruts/Struts.java (98%)
rename group24/798277403/src/{week2 => }/litestruts/StrutsTest.java (84%)
rename group24/798277403/src/{week2 => }/litestruts/View.java (93%)
create mode 100644 group24/798277403/src/mini_jvm/clz/AccessFlag.java
create mode 100644 group24/798277403/src/mini_jvm/clz/ClassFile.java
create mode 100644 group24/798277403/src/mini_jvm/clz/ClassIndex.java
create mode 100644 group24/798277403/src/mini_jvm/constant/ClassInfo.java
create mode 100644 group24/798277403/src/mini_jvm/constant/ConstantInfo.java
create mode 100644 group24/798277403/src/mini_jvm/constant/ConstantPool.java
create mode 100644 group24/798277403/src/mini_jvm/constant/FieldRefInfo.java
create mode 100644 group24/798277403/src/mini_jvm/constant/MethodRefInfo.java
create mode 100644 group24/798277403/src/mini_jvm/constant/NameAndTypeInfo.java
create mode 100644 group24/798277403/src/mini_jvm/constant/NullConstantInfo.java
create mode 100644 group24/798277403/src/mini_jvm/constant/StringInfo.java
create mode 100644 group24/798277403/src/mini_jvm/constant/UTF8Info.java
create mode 100644 group24/798277403/src/mini_jvm/loader/ByteCodeIterator.java
create mode 100644 group24/798277403/src/mini_jvm/loader/ClassFileLoader.java
create mode 100644 group24/798277403/src/mini_jvm/loader/ClassFileParser.java
create mode 100644 group24/798277403/src/mini_jvm/test/ClassFileloaderTest.java
create mode 100644 group24/798277403/src/mini_jvm/test/EmployeeV1.java
create mode 100644 group24/798277403/src/mini_jvm/util/Util.java
delete mode 100644 group24/798277403/src/week2/litestruts/struts.xml
delete mode 100644 group24/798277403/src/week4/loader/ClassFileLoader.java
delete mode 100644 group24/798277403/src/week4/test/ClassFileloaderTest.java
delete mode 100644 group24/798277403/src/week4/test/EmployeeV1.java
diff --git a/group24/798277403/out/production/zhouliang/week2/litestruts/struts.xml b/group24/798277403/out/production/zhouliang/week2/litestruts/struts.xml
deleted file mode 100644
index 54550a4174..0000000000
--- a/group24/798277403/out/production/zhouliang/week2/litestruts/struts.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
- /jsp/homepage.jsp
- /jsp/showLogin.jsp
-
-
- /jsp/welcome.jsp
- /jsp/error.jsp
-
-
diff --git a/group24/798277403/src/week1/ArrayList.java b/group24/798277403/src/basic/ArrayList.java
similarity index 99%
rename from group24/798277403/src/week1/ArrayList.java
rename to group24/798277403/src/basic/ArrayList.java
index 03257803df..436ca1f9f2 100644
--- a/group24/798277403/src/week1/ArrayList.java
+++ b/group24/798277403/src/basic/ArrayList.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
import java.util.Arrays;
diff --git a/group24/798277403/src/week1/ArrayListTest.java b/group24/798277403/src/basic/ArrayListTest.java
similarity index 98%
rename from group24/798277403/src/week1/ArrayListTest.java
rename to group24/798277403/src/basic/ArrayListTest.java
index 98e30a222a..c50af7befa 100644
--- a/group24/798277403/src/week1/ArrayListTest.java
+++ b/group24/798277403/src/basic/ArrayListTest.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
import org.junit.Assert;
import org.junit.Before;
diff --git a/group24/798277403/src/week1/BinaryTree.java b/group24/798277403/src/basic/BinaryTree.java
similarity index 99%
rename from group24/798277403/src/week1/BinaryTree.java
rename to group24/798277403/src/basic/BinaryTree.java
index 3c480dc012..c2d5bb2c24 100644
--- a/group24/798277403/src/week1/BinaryTree.java
+++ b/group24/798277403/src/basic/BinaryTree.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
/**
* Created by zhouliang on 2017-03-11.
diff --git a/group24/798277403/src/week1/BinaryTreeNode.java b/group24/798277403/src/basic/BinaryTreeNode.java
similarity index 99%
rename from group24/798277403/src/week1/BinaryTreeNode.java
rename to group24/798277403/src/basic/BinaryTreeNode.java
index e680d5ed15..599b2b1ca8 100644
--- a/group24/798277403/src/week1/BinaryTreeNode.java
+++ b/group24/798277403/src/basic/BinaryTreeNode.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
/**
* 自己实现的BinaryTreeNode
diff --git a/group24/798277403/src/week1/Iterator.java b/group24/798277403/src/basic/Iterator.java
similarity index 90%
rename from group24/798277403/src/week1/Iterator.java
rename to group24/798277403/src/basic/Iterator.java
index 73ba87c125..4c0fedf988 100644
--- a/group24/798277403/src/week1/Iterator.java
+++ b/group24/798277403/src/basic/Iterator.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
/**
* 自己实现的Iterator
diff --git a/group24/798277403/src/week4/LRU/LRUPageFrame.java b/group24/798277403/src/basic/LRU/LRUPageFrame.java
similarity index 99%
rename from group24/798277403/src/week4/LRU/LRUPageFrame.java
rename to group24/798277403/src/basic/LRU/LRUPageFrame.java
index cbbb26fc7f..e69e051321 100644
--- a/group24/798277403/src/week4/LRU/LRUPageFrame.java
+++ b/group24/798277403/src/basic/LRU/LRUPageFrame.java
@@ -1,4 +1,4 @@
-package week4.LRU;
+package basic.LRU;
/**
* Created by zhouliang on 2017-04-04.
diff --git a/group24/798277403/src/week4/LRU/LRUPageFrameTest.java b/group24/798277403/src/basic/LRU/LRUPageFrameTest.java
similarity index 98%
rename from group24/798277403/src/week4/LRU/LRUPageFrameTest.java
rename to group24/798277403/src/basic/LRU/LRUPageFrameTest.java
index 0b6bdf2c25..4993f42e75 100644
--- a/group24/798277403/src/week4/LRU/LRUPageFrameTest.java
+++ b/group24/798277403/src/basic/LRU/LRUPageFrameTest.java
@@ -1,4 +1,4 @@
-package week4.LRU;
+package basic.LRU;
import org.junit.Assert;
import org.junit.Test;
diff --git a/group24/798277403/src/week4/LRU/MyLRUPageFrame.java b/group24/798277403/src/basic/LRU/MyLRUPageFrame.java
similarity index 99%
rename from group24/798277403/src/week4/LRU/MyLRUPageFrame.java
rename to group24/798277403/src/basic/LRU/MyLRUPageFrame.java
index 9e720d8589..b2387dbd81 100644
--- a/group24/798277403/src/week4/LRU/MyLRUPageFrame.java
+++ b/group24/798277403/src/basic/LRU/MyLRUPageFrame.java
@@ -1,4 +1,4 @@
-package week4.LRU;
+package basic.LRU;
/**
* Created by zhouliang on 2017-04-04.
diff --git a/group24/798277403/src/week1/LinkedList.java b/group24/798277403/src/basic/LinkedList.java
similarity index 98%
rename from group24/798277403/src/week1/LinkedList.java
rename to group24/798277403/src/basic/LinkedList.java
index e0160d0e5f..30d0b4a099 100644
--- a/group24/798277403/src/week1/LinkedList.java
+++ b/group24/798277403/src/basic/LinkedList.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
/**
* 自己实现的LinkedList
@@ -228,7 +228,7 @@ public void removeRange(int min, int max){
* 现要求生成新链表C,其元素为当前链表和list中元素的交集,且表C中的元素有依值递增有序排列
* @param list
*/
- public LinkedList intersection( LinkedList list){
+ public LinkedList intersection(LinkedList list){
return null;
}
}
diff --git a/group24/798277403/src/week1/LinkedListTest.java b/group24/798277403/src/basic/LinkedListTest.java
similarity index 98%
rename from group24/798277403/src/week1/LinkedListTest.java
rename to group24/798277403/src/basic/LinkedListTest.java
index 9a8a9d936d..0611a1ddb7 100644
--- a/group24/798277403/src/week1/LinkedListTest.java
+++ b/group24/798277403/src/basic/LinkedListTest.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
import org.junit.Before;
import org.junit.Test;
diff --git a/group24/798277403/src/week1/List.java b/group24/798277403/src/basic/List.java
similarity index 93%
rename from group24/798277403/src/week1/List.java
rename to group24/798277403/src/basic/List.java
index 982885508f..c46d81d175 100644
--- a/group24/798277403/src/week1/List.java
+++ b/group24/798277403/src/basic/List.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
/**
* 自己定义的List接口
diff --git a/group24/798277403/src/week1/Queue.java b/group24/798277403/src/basic/Queue.java
similarity index 97%
rename from group24/798277403/src/week1/Queue.java
rename to group24/798277403/src/basic/Queue.java
index 184f3a5336..371f2f9340 100644
--- a/group24/798277403/src/week1/Queue.java
+++ b/group24/798277403/src/basic/Queue.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
/**
* 自己实现的Queue,用自己的LinkedList实现
diff --git a/group24/798277403/src/week1/QueueTest.java b/group24/798277403/src/basic/QueueTest.java
similarity index 97%
rename from group24/798277403/src/week1/QueueTest.java
rename to group24/798277403/src/basic/QueueTest.java
index b5a333f64d..8af2de5ada 100644
--- a/group24/798277403/src/week1/QueueTest.java
+++ b/group24/798277403/src/basic/QueueTest.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
import org.junit.Before;
import org.junit.Test;
diff --git a/group24/798277403/src/week1/Stack.java b/group24/798277403/src/basic/Stack.java
similarity index 97%
rename from group24/798277403/src/week1/Stack.java
rename to group24/798277403/src/basic/Stack.java
index f85aa2ada5..e6351da277 100644
--- a/group24/798277403/src/week1/Stack.java
+++ b/group24/798277403/src/basic/Stack.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
/**
* 自己实现的Stack
diff --git a/group24/798277403/src/week1/StackTest.java b/group24/798277403/src/basic/StackTest.java
similarity index 97%
rename from group24/798277403/src/week1/StackTest.java
rename to group24/798277403/src/basic/StackTest.java
index f4213d66d3..921560a0f0 100644
--- a/group24/798277403/src/week1/StackTest.java
+++ b/group24/798277403/src/basic/StackTest.java
@@ -1,4 +1,4 @@
-package week1;
+package basic;
import org.junit.Before;
import org.junit.Test;
diff --git a/group24/798277403/src/week2/array/ArrayUtil.java b/group24/798277403/src/basic/array/ArrayUtil.java
similarity index 99%
rename from group24/798277403/src/week2/array/ArrayUtil.java
rename to group24/798277403/src/basic/array/ArrayUtil.java
index 04c03f95e0..e29a4845bf 100644
--- a/group24/798277403/src/week2/array/ArrayUtil.java
+++ b/group24/798277403/src/basic/array/ArrayUtil.java
@@ -1,4 +1,4 @@
-package week2.array;
+package basic.array;
import java.util.Arrays;
diff --git a/group24/798277403/src/week2/array/ArrayUtilTest.java b/group24/798277403/src/basic/array/ArrayUtilTest.java
similarity index 99%
rename from group24/798277403/src/week2/array/ArrayUtilTest.java
rename to group24/798277403/src/basic/array/ArrayUtilTest.java
index 77c99242fa..792c778e75 100644
--- a/group24/798277403/src/week2/array/ArrayUtilTest.java
+++ b/group24/798277403/src/basic/array/ArrayUtilTest.java
@@ -1,4 +1,4 @@
-package week2.array;
+package basic.array;
import org.junit.Assert;
import org.junit.Before;
diff --git a/group24/798277403/src/week3/linkedlist/LinkedList.java b/group24/798277403/src/basic/linkedlist/LinkedList.java
similarity index 99%
rename from group24/798277403/src/week3/linkedlist/LinkedList.java
rename to group24/798277403/src/basic/linkedlist/LinkedList.java
index ad4560ad7d..53c9200412 100644
--- a/group24/798277403/src/week3/linkedlist/LinkedList.java
+++ b/group24/798277403/src/basic/linkedlist/LinkedList.java
@@ -1,4 +1,4 @@
-package week3.linkedlist;
+package basic.linkedlist;
/**
diff --git a/group24/798277403/src/week3/linkedlist/LinkedListTest.java b/group24/798277403/src/basic/linkedlist/LinkedListTest.java
similarity index 95%
rename from group24/798277403/src/week3/linkedlist/LinkedListTest.java
rename to group24/798277403/src/basic/linkedlist/LinkedListTest.java
index fa648edfc6..4f74499501 100644
--- a/group24/798277403/src/week3/linkedlist/LinkedListTest.java
+++ b/group24/798277403/src/basic/linkedlist/LinkedListTest.java
@@ -1,4 +1,4 @@
-package week3.linkedlist;
+package basic.linkedlist;
import org.junit.Before;
import org.junit.Test;
@@ -8,7 +8,7 @@
*/
public class LinkedListTest {
- private week3.linkedlist.LinkedList myLinkedList = new week3.linkedlist.LinkedList<>();
+ private LinkedList myLinkedList = new LinkedList<>();
private java.util.LinkedList systemLinkedList = new java.util.LinkedList<>();
diff --git a/group24/798277403/src/week3/linkedlist/List.java b/group24/798277403/src/basic/linkedlist/List.java
similarity index 89%
rename from group24/798277403/src/week3/linkedlist/List.java
rename to group24/798277403/src/basic/linkedlist/List.java
index a3245a5eb9..3b9dfb132a 100644
--- a/group24/798277403/src/week3/linkedlist/List.java
+++ b/group24/798277403/src/basic/linkedlist/List.java
@@ -1,4 +1,4 @@
-package week3.linkedlist;
+package basic.linkedlist;
/**
* 自己定义的List接口
diff --git a/group24/798277403/src/basic/stack/StackUtil.java b/group24/798277403/src/basic/stack/StackUtil.java
new file mode 100644
index 0000000000..7e5c157306
--- /dev/null
+++ b/group24/798277403/src/basic/stack/StackUtil.java
@@ -0,0 +1,116 @@
+package basic.stack;
+
+import java.util.Stack;
+
+/**
+ * Created by zhouliang on 2017-04-08.
+ */
+class StackUtil {
+ /**
+ * 假设栈中的元素是Integer, 从栈顶到栈底是 : 5,4,3,2,1 调用该方法后, 元素次序变为: 1,2,3,4,5
+ * 注意:只能使用Stack的基本操作,即push,pop,peek,isEmpty, 可以使用另外一个栈来辅助
+ */
+ public static void reverse(Stack s) {
+ if(s.empty()){
+ return;
+ }
+ int i = getAndRemoveBottom(s); // 依次返回1、2、3
+ reverse(s);
+ s.push(i);
+ }
+
+ //移除并返回当前的栈底元素
+ private static int getAndRemoveBottom(Stack s){
+ int result = s.pop();
+ if(s.empty()){
+ return result;
+ }else{
+ int bottom = getAndRemoveBottom(s);
+ s.push(result);
+ return bottom;
+ }
+ }
+
+
+
+ /**
+ * 删除栈中的某个元素 注意:只能使用Stack的基本操作,即push,pop,peek,isEmpty, 可以使用另外一个栈来辅助
+ * @param o
+ */
+ public static void remove(Stack