倉頡編程語言的一點期望

華爲要出國產編程語言倉頡了!牛逼

 

一、訪問修飾符

寫了十幾年的代碼,用過很多種語言,Java最長。在對代碼封裝時,總是有一點遺憾:

Java訪問修飾符:public、protected、default、private四種,如下類Class2,有四個方法

轉載請註明原著:博客園老鍾 https://www.cnblogs.com/littlecarry/

Class2類所在包結構如下

 

package1、package2,是同級包,package10、package11是package1下的同級包

我期望,Class2有個方法,Class1、Class3能調用(可見),Class8不能調用(不可見)

public 的testA(),Class1、Class3可見,Class8也可見

default 的testC(),僅Class3可見

testB(), testD(),一樣都達不到這樣的要求

 

二、爲什麼會有這樣的需求呢?

 比如設計一個網絡收發節點1

network1爲上層包,下面分爲 recv、send包,

Net1Manager類,統籌發送和接收,是網絡節點1對外的門面,所有對網絡節點1的操作,只能通過這個類,實現完美的封裝、隔離、內聚。

Receiver類(接收器)、Sender類(發送器)在不同的子包。

 Sender類的發送數據的方法:sendData(),NetManager類是必須要調用的,所以只能是public而這就導致sendData()方法對網絡節點2的Net2Manager類可見!這是不應該的!!!

 

三、總結

希望倉頡有一種修飾符,讓那個方法同級包可見上層包可見,使得代碼能封裝得更好!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章