局部內(nèi)部類的特點(diǎn)與使用

特點(diǎn)

  1. 不能用public private static 修飾類
  2. 訪問方法內(nèi)的變量必須是finnal類型
  3. 在方法體內(nèi)返回實(shí)例
  4. 外部類必然無法實(shí)例局部類

使用


import lombok.extern.java.Log;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class LocalInnerClassTest {
    private String outpara1="out param 1";
    private static String outpara2="out param 2";
    
    interface Inner{
        void print();
    }

    public Inner testLocalClass(){
        final String localInput="localInput";
       class LocalClass implements Inner{
                private String innerpara1="out param 1";
                
                private final   String innerpara2="out param 2";

            @Override
            public void print() {
              log.info("begin print"); 
              log.info("print {}",localInput);
              log.info("out param1 :{}",outpara1); 
            }

        }
        return new LocalClass();
    }
    public static Inner testLocalClass2(){
        class LocalClass implements Inner{
                 private  String innerpara1="iner param 1";
                 
                 private   String innerpara2="iner param 2";
 
             @Override
             public void print() {
               log.info("begin print"); 
               log.info("inner param1 :{}",innerpara1); 
               log.info("inner param2  :{}",innerpara2); 
             }
 
         }
         return new LocalClass();
     }
    public static void main(String[] args) {
        LocalInnerClassTest test=new LocalInnerClassTest();
        test.testLocalClass().print();
        testLocalClass2().print();
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容