現實生活:執行緒&人類歷史

海微發表於2012-09-05

他從一本造出萬族的人,住在全地上,並且預先定準他們的年限和所住的疆界;要叫他們尋求神,或者可以揣摩而得。其實他離我們各人不遠,我們生活、動作、存留,都在乎他。 《使徒行傳》17:26-28

“年限”為時間。“疆界”為空間。“定準他們的年限和所住的疆界”,意指時間和空間組成一個人眼見不能見的大容器,人活在裡面。人在空間裡面生活,構成社會。人順著時間發展,演變成歷史。因此,“橫看人類是歷史,縱看歷史是社會,歷史就是社會的變革。”自然,人所發明的程式語言也是受時間的空間限制的。下面仍是以程式設計的語言來理解、闡述人類歷史。人類的整體歷史為主執行緒,中國的歷史可以看作與其同步執行的子執行緒,以色列歷史也是一樣。

程式語言翻譯

中國歷史

中國歷史繼承於Thread執行緒類。被主執行緒啟動進入,並監聽主執行緒的年代發展,及其監聽主執行緒的世界末日是否來到。世界末日只要未到,中國歷史就一直朝前發展。世界末日到了,就結束當前執行緒。

程式碼清單1:ChineseHistory類原始碼

---------------------------------------------------------------------package history; /** * 中國歷史程式 */ public class ChineseHistory extends Thread{

public void run() {
    //中國歷史從此開始。。。

    //中國歷史概況:(資料源於網上,不一定完全準確)
    //1、約170萬-4000年前,原始社會
    //2、公元前2100的第一個朝代夏朝,至公元前770-公元前221的春秋戰國,奴隸社會
    //3、公元前221的秦朝,至1911年的清朝結束,封建社會

    //只要世界末日沒有來臨,中國歷史就一直邁步向前進
    while( WorldHistory.theEndOfTheWorld==false ){

         //世界歷史一千年看作3秒,中國歷史同步進行,也等待3秒。
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }   

        if(WorldHistory.currentYear >=-5000 &&WorldHistory.currentYear <=-4000){
            System.out.println("---|"+"中國歷史程式:約170萬-4000年前,中國處於原始社會" );
        }else if(WorldHistory.currentYear >-2100 && WorldHistory.currentYear <= -1010){
            System.out.println("---|"+"中國歷史程式:公元前2100的第一個朝代夏朝,至公元前770-公元前221的春秋戰國,中國處於奴隸社會" );
        }else if(WorldHistory.currentYear >-221 && WorldHistory.currentYear <= 1911){
            System.out.println("---|"+"中國歷史程式:公元前221的秦朝,至1911年的清朝結束,封建社會" );
        }else if(WorldHistory.currentYear >1911 && WorldHistory.currentYear <= 2000){
            System.out.println("---|"+"中國歷史程式:進入中國1912至2000年的歷史。" );
        }else if(WorldHistory.currentYear >2000 && WorldHistory.currentYear <= 3000){
            System.out.println("---|"+"中國歷史程式:進入中國2001至3000年的歷史。" );
        }                
    }

}

}

以色列歷史

以色列歷史同樣的是繼承於Thread執行緒類,也是被主執行緒啟動進入,並監聽主執行緒的年代發展,及其監聽世界末日是否來到。世界末日只要未到,以色列歷史就一直朝前發展。

程式碼清單2:IsraelHistory類原始碼

package history; /** * 以色列歷史程式 */ public class IsraelHistory extends Thread{

public void run() {
    //以色列歷史從此開始。。。

    //以色列歷史(資料源於網上,不一定完全準確)
    //1、公元前x年---公元前1406年,族長時期
    //2、公元前1406-公元前1010年,士師時期
    //3、公元前1010-公元前931年,聯合王國時期
    //4、公元前931-公元前723年,分裂王國時期
    //5、公元前723-公元前586年,倖存王國時期
    //6、公元前586-公元前404年,被擄迴歸
    //7、公元前404-公元33年,沉默時期

    //只要世界末日沒有來臨,以色列歷史就一直邁步向前進
    while( WorldHistory.theEndOfTheWorld==false ){

         //世界歷史一千年看作3秒,以色列歷史同步進行,也等待3秒。
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }   


        if(WorldHistory.currentYear <=-1406){
            System.out.println("---|"+"以色列歷史程式:公元前x年至公元前1406年,以色列歷史進入:族長時期" );
        }else if(WorldHistory.currentYear >-1406 && WorldHistory.currentYear <= -1010){
            System.out.println("---|"+"以色列歷史程式:公元前1406至公元前1010年,以色列歷史進入:士師時期" );
        }else if(WorldHistory.currentYear >-1010 && WorldHistory.currentYear <= -931){
            System.out.println("---|"+"以色列歷史程式:公元前1010至公元前931年,,以色列歷史進入:聯合王國時期" );
        }else if(WorldHistory.currentYear >-931 && WorldHistory.currentYear <= -723){
            System.out.println("---|"+"以色列歷史程式:公元前931至公元前723年,以色列歷史進入:分裂王國時期" );
        }else if(WorldHistory.currentYear >-723 && WorldHistory.currentYear <= -586){
            System.out.println("---|"+"以色列歷史程式:公元前723至公元前586年,以色列歷史進入:倖存王國時期" );
        }else if(WorldHistory.currentYear >-586 && WorldHistory.currentYear <= -404){
            System.out.println("---|"+"以色列歷史程式:公元前586至公元前404年,以色列歷史進入:被擄迴歸" );
        }else if(WorldHistory.currentYear >-404 && WorldHistory.currentYear <= 33){
            System.out.println("---|"+"以色列歷史程式:公元前404至公元33年,以色列歷史進入:沉默時期" );
        }else if(WorldHistory.currentYear >33 && WorldHistory.currentYear <= 1000){
            System.out.println("---|"+"以色列歷史程式:進入以色列公元33年至公元1000年的歷史。" );
        }else if(WorldHistory.currentYear >1000 && WorldHistory.currentYear <= 2000){
            System.out.println("---|"+"以色列歷史程式:進入以色列公元1000年至公元2000年的歷史。" );
        } if(WorldHistory.currentYear >2000 && WorldHistory.currentYear <= 3000){
            System.out.println("---|"+"以色列歷史程式:進入以色列公元2000年至公元3000年的歷史。" );
        }
   }
}

}

世界歷史

自從創世以來,人類歷史就開始了。中國歷史、以色列歷史作為人類歷史的一部分,以子執行緒的方式在人類歷史的主執行緒中啟動,並且與其同步進行。

程式碼清單3:WorldHistory類原始碼

package history; /** * 世界歷史程式 */ public class WorldHistory {

//當前年代。從公元前5000年算起
public static int  currentYear = -5000;

//世界末日是否到來
public static boolean theEndOfTheWorld = false;

//人類歷史主程式入口
public static void main(String[] args) throws Exception{

    //《創世記》 1:1 起初 神創造天地。 
    System.out.println("上帝用七天造了萬物後,世界歷史就這樣開始了。。。");

    //建立中國歷史物件
    ChineseHistory chineseHis = new ChineseHistory();

    //建立以色列歷史物件
    IsraelHistory israelHis = new IsraelHistory();

    //以子執行緒開始以色列歷史程式
    System.out.println("---|"+"以色列歷史作為人類歷史的一部分,一個分支,在此也開始了。。。");
    israelHis.start();


    //以子執行緒開始中國歷史程式
    chineseHis.start();
    System.out.println("---|"+"中國歷史作為人類歷史的一部分,一個分支,在此也開始了。。。");

    System.out.println();

    //世界歷史車輪馬不停蹄滾滾向前。
    while(theEndOfTheWorld==false){

        //列印人類歷史進入的年分
        if(currentYear<0){
            System.out.println("人類歷史進入公元前"+Math.abs(currentYear)+"年,至以後的一千年");
        }else{
            System.out.println("人類歷史進入公元"+currentYear+"年,至以後的一千年");
        }

        //演示起見。每次向前滾一千年
        currentYear += 1000;

        // 《彼得後書》 3:8 親愛的弟兄啊,有一件事你們不可忘記,就是主看一日如千年,千年如一日。 
        //上帝眼中千年如一日。演示起見,一千年看為3秒。
        Thread.sleep(3000);
        // 《馬太福音》 24:36 但那日子、那時辰,沒有人知道,連天上的使者也不知道,子也不知道,惟獨父知道。 
        //世界末日是人所不知的。演示起見,假設為公元3000年
        if(currentYear==3000){
            theEndOfTheWorld = true;

        }

        //每次迴圈,停3秒。人類歷史向前滾進1000年,發生太多的事,在止列印一點空間,供喘氣用。
        System.out.println();
    }

    Thread.sleep(1000);//主執行緒停止1秒,等待子執行緒列印歷史年分
    System.out.println();
    System.out.println("世界末日來了,人類歷史至此結束。");
}

}

歷史一邊朝前發展著,一邊被歷史學家定格成文字。同樣的,程式跑起來,我們的程式就充當了歷史家,控制檯就充滿了史書。執行結果顯示:

上帝用七天造了萬物後,世界歷史就這樣開始了。。。 ---|以色列歷史作為人類歷史的一部分,一個分支,在此也開始了。。。 ---|中國歷史作為人類歷史的一部分,一個分支,在此也開始了。。。 人類歷史進入公元前5000年,至以後的一千年 人類歷史進入公元前4000年,至以後的一千年 ---|以色列歷史程式:公元前x年至公元前1406年,以色列歷史進入:族長時期 人類歷史進入公元前3000年,至以後的一千年 ---|以色列歷史程式:公元前x年至公元前1406年,以色列歷史進入:族長時期 ---|中國歷史程式:公元前2100的第一個朝代夏朝,至公元前770-公元前221的春秋戰國,中國處於奴隸社會 人類歷史進入公元前2000年,至以後的一千年 ---|以色列歷史程式:公元前1010至公元前931年,,以色列歷史進入:聯合王國時期 人類歷史進入公元前1000年,至以後的一千年 ---|以色列歷史程式:公元前404至公元33年,以色列歷史進入:沉默時期 ---|中國歷史程式:公元前221的秦朝,至1911年的清朝結束,封建社會 人類歷史進入公元0年,至以後的一千年 ---|以色列歷史程式:進入以色列公元33年至公元1000年的歷史。 ---|中國歷史程式:公元前221的秦朝,至1911年的清朝結束,封建社會 人類歷史進入公元1000年,至以後的一千年 ---|以色列歷史程式:進入以色列公元1000年至公元2000年的歷史。 ---|中國歷史程式:進入中國1912至2000年的歷史。 人類歷史進入公元2000年,至以後的一千年 ---|以色列歷史程式:進入以色列公元2000年至公元3000年的歷史。 ---|中國歷史程式:進入中國2001至3000年的歷史。 ---|以色列歷史程式:進入以色列公元2000年至公元3000年的歷史。 ---|中國歷史程式:進入中國2001至3000年的歷史。 世界末日來了,人類歷史至此結束。 enter image description here

相關文章