新一代程式語言

2021-09-05 14:17:00 字數 1321 閱讀 7112

新一代程式語言?完全是譁眾取寵的標題,無非是想多吸引一些看客。

對於現在的程式語言,老實說,不太滿意,感覺很多不方便,這是我心目中的程式語言是這樣的:

所有的類不可以直接暴露任何方法,例如下面的**是錯誤的。

classa a = new classa();    //error:不能以類的方法定義變數。

a.do();    //error: 類沒有直接暴露任何方法。

只能以介面的方式訪問類的例項。

iclassa a = new classa();  

a.do();

或者:

iclassa a = factory.create();

a.do();

為什麼要這樣呢?這是為下面的多基礎類做準備的。

現在的程式語言只能有乙個基類,我覺的很不方便,為了實現多基類,我覺的使用基於介面的程式設計再加上一定的語法,還是可以很好的實現的。

public class classa : classb,classc,classd

classa將實現classb、classc和classd實現的所有介面。例如:

iclassb  a = new classa();

當然編譯器將檢查介面實現的重複問題,例如classb和classc都實現了iinte***cex,classb和classd都實現了iinte***cey,編譯器將強制要求指定哪個去實現。

public class classa : classb,classc,classd implement classb : iinte***cex,iinte***cey

這樣就指定了這倆個介面都由classb去實現。

當然,你也可以指定自己去實現:

public class classa : classb,classc,classd implement classa : iinte***cex,iinte***cey

如果你想修改乙個介面的實現(僅僅修改已有的乙個實現),你可以使用下面的語法:

void do() : iinte***cex,iinte***cey.do2

如果你指定的是乙個介面,編譯器將認為是實現了這個介面中相同描述的方法,如果你指定了方法名,編譯器也可以將這個實現對映到這個方法中,當然了,這個方法的引數和返回值要相同。

如果你想呼叫已有的乙個實現可以這樣:

void do() : iinte***cex,iinte***cey.do2

這裡的implement是乙個關鍵字。

如果你想訪問classb的protected的方法或變數,可以這樣。

implement(classb)._value = "fsdf";

新一代IM工具

深圳kc公司推出的 第二代即時通訊 軟體 kc不僅分文不取,還在各種深度im應用以外提供了眾多傳統的 有償服務 如每月300條簡訊 每月10分鐘國內長途 等等,而這些都是免費的!下面我們就來一睹這款軟體的真容!keep contact 簡稱kc 是一款新型的免費即時通訊 軟體。它集合網路 簡訊 彩信...

新聲一代享自由 JBL全新一代FREE測評

自分離式腔體的耳機首次推出之後,真無線耳機的風潮席捲世界。很明顯真無線耳機讓使用者體驗到了耳機與身體一體而行的自由體驗,觀感體驗可謂是顛覆性的。在風潮引領之下,jbl在 2017 年末推出了第一款真無線耳機free過後,在 2018 年 9 月又推出了這款耳機的公升級版 jbl全新一代free真無線...

SCA,實現新一代的SOA

從beaworld 2006大會上,我更多地了解了sca這個概念。sca service component architecture 是一種規範,它的核心概念是服務及其相關實現。我們不必再考慮使用何種語言或者何種技術,我們只需要將注意力集中在業務邏輯的編寫上。我們不必再為不同的部署描述符或者部署檔...