真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Apex類與訪問修飾符的權(quán)限是什么

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)Apex類與訪問修飾符的權(quán)限是什么,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

成都創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)營銷推廣、網(wǎng)站重做改版、平南網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5網(wǎng)站設(shè)計(jì)、成都做商城網(wǎng)站、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為平南等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

Apex 類的定義與Java相同,通過class 關(guān)鍵字標(biāo)識(shí)。

1) 每個(gè)Top類必須要有修飾符,否則不能通過編譯。

    (Compile Error for Test.cls: Top-level type must have public or global visibility at line 1         column 7)

2)內(nèi)部類可以不寫修飾符(私有)。

3) 可選virtual, abstract  表明當(dāng)前類為抽象類

4)和Java一樣,可通過implements關(guān)鍵字實(shí)現(xiàn)多個(gè)接口,通過extends單繼承父類

5)類名不能和SF的關(guān)鍵字重名如標(biāo)準(zhǔn)對象等(之前一同事遇到一個(gè)類的類名和標(biāo)準(zhǔn)對象同名,導(dǎo)致在使用標(biāo)準(zhǔn)對象時(shí),報(bào)字段不存在)

類訪問修飾符

1    private 不可用在Top 類中,僅可在內(nèi)部類中使用,外部不可訪問
      當(dāng)new Test 調(diào)用my()時(shí),可正確執(zhí)行,當(dāng)通過 new Test.InnerClazz時(shí)報(bào)InnerClazz不  存在

public class Test{
  private class InnerClazz{

  }

  public void my(){
    InnerClazz iclass = new InnerClazz();
    System.debug(iclass);
  }
}

2  public 可在當(dāng)前應(yīng)用或者在當(dāng)前命名空間使用

3  global 任意訪問,webService必須是global的,如果一個(gè)方法或者內(nèi)部類為global,則Top類必須為global

4  with sharing/without sharing 當(dāng)前類權(quán)限模式

類定義形式

private | public | global
[virtual | abstract | with sharing | without sharing]
class ClassName [implements InterfaceNameList] [extends ClassName] {
// The body of the class
}

成員變量定義形式

 [public | private | protected | global] [final] [static] data_type variable_name [= value]

類型和變量名為必須,訪問修飾可選,不寫為private final與static 修飾變量為常量與Java相同

類型:基本類型與自定義類型

Apex 屬性:get/set

public Integer prop{
  get {return prop;}
  set {prop = value;}
}

//簡寫 當(dāng)只寫get時(shí),在本類中也無法給值
public Integer prop{get; set;}

成員方法形式

[public | private | protected | global] [override] [static] data_type method_name (input parameters)
{
// The body of the method
}

1)訪問修飾符可選 不寫為private

2) override 實(shí)現(xiàn)父類的抽象方法

3) static 靜態(tài)方法,類方法,通過類調(diào)用

4) 值類型(基本數(shù)據(jù)類型如:Integer,String)與引用類型

權(quán)限(一)

1)with sharing 當(dāng)前類遵循SF的共享模型 按SQL語句執(zhí)行的結(jié)果集只查出有權(quán)限的數(shù)據(jù)。

2)without sharing 按SQL語句執(zhí)行

測試1:當(dāng)控制類為without sharing 對像所有權(quán)限為無,通過VF頁面,讓無權(quán)限的人是否能創(chuàng)建

Apex類與訪問修飾符的權(quán)限是什么

實(shí)際測試后,是可以創(chuàng)建,所有人與創(chuàng)建人均為當(dāng)前登錄者,但是無法通過標(biāo)準(zhǔn)界面查看當(dāng)前記錄(賦值是程序給值)

測試2:當(dāng)查詢后臺(tái)數(shù)據(jù)在VF頁面展示時(shí),查詢?nèi)罩緯r(shí),顯示獲取了數(shù)據(jù),前臺(tái)通過循環(huán)時(shí),打印空白。無法查看

當(dāng)把對象勾選查看時(shí),可以打印出結(jié)果,但是字段安全性不可見的字段還是不可見。

測試3:刪除一條記錄,結(jié)果顯示可以刪除。

測試4:修改一條記錄,結(jié)果顯示可以刪除。(賦值是程序給值)

采用without sharing時(shí),可以創(chuàng)建對象,能查詢到結(jié)果,但是無法在VF頁面中顯示,當(dāng)有對象查看權(quán)限時(shí),是可以看到標(biāo)準(zhǔn)字段,當(dāng)字段可見性沒有勾選時(shí),仍然是不可見的。

修改和刪除能正常工作。(還需要測試的情況有:內(nèi)部類的權(quán)限,當(dāng)with sharing調(diào)用without sharing類的方法時(shí)權(quán)限,當(dāng)with sharing extends without sharing 權(quán)限,當(dāng)without sharing extends with sharing)

一般都是with sharing,without sharing解決特殊情況下。如最近遇到在市場活動(dòng)下,創(chuàng)建報(bào)名,報(bào)名上的費(fèi)用通過trigger匯總更新到市場活動(dòng)上,銷售沒有市場活動(dòng)編輯權(quán)限,但匯總又需要編輯權(quán)限的情況。

上述就是小編為大家分享的Apex類與訪問修飾符的權(quán)限是什么了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


新聞名稱:Apex類與訪問修飾符的權(quán)限是什么
標(biāo)題鏈接:http://weahome.cn/article/psgods.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部