精华内容
下载资源
问答
  • 局部内部类

    2019-10-08 00:34:57
    局部内部类概述:包含在外部类的函数中的内部类称之为局部内部类。 访问:可以在包含局部内部类的方法中直接创建局部内部类的对象调用局部内部类的成员。 注意:局部内部类只能访问所在函数的final属性。 ...

    局部内部类概述:包含在外部类的函数中的内部类称之为局部内部类。

    访问:可以在包含局部内部类的方法中直接创建局部内部类的对象调用局部内部类的成员。

    注意:局部内部类只能访问所在函数的final属性。

     


    匿名内部类

    匿名内部类:就是没有类名字的内部类。

    匿名内部类作用:简化内部类书写。

    匿名内部类的前提:必须继承一个父类或者是实现一个接口。

    匿名内部类的格式: 

    new 父类或者接口(){ 执行代码….};

    class Outer{
    	class Inner
    	{
    		public void show(){
    			System.out.println("内部类的show方法");
    		}
    	}
    	public void print(){
    		new Inner().show();
    	}
    }
    

     


     

    转载于:https://www.cnblogs.com/hyit/articles/4895186.html

    展开全文
  • 定义在方法或某个作用域内的内部类,称为局部内部类。匿名内部类就是一种局部内部类。实现方式public class OutterType { public void function() { /** 局部内部类Inner*/ class Inner { public void print() { ...
    c47e2fccba50581f5e5482dddf84d0a0.png

    定义

    方法或某个作用域内的内部类,称为局部内部类。匿名内部类就是一种局部内部类。

    实现方式

    public class OutterType {  public void function() { /** 局部内部类Inner*/ class Inner { public void print() { System.out.println("局部内部类..."); } } }}

    规则

    规则一:局部内部类类似方法的局部变量,所以在类外或者类的其他方法中不能访问这个内部类,但这并不代表局部内部类的实例和定义了它的方法中的局部变量具有相同的生命周期。

    注意,如果是定义在一个作用域内的局部内部类,如下的形式:

    0f072edfb7b48674bdd5e3c904acd2ab.png

    我们将局部内部类In定义在了一个if条件作用域中,因此,在if之外的部分,尽管没有离开function()方法,就会报编译错误,无法访问到In这个内部类,因此,还是需要广义的理解局部内部类的含义和访问条件,不可片面的理解为仅仅是方法中定义的内部类。

    规则二:只能在方法内部,类(局部内部类)定义之后使用,不存在外部可见性问题,因此没有访问修饰符。

    规则三:不能在局部内部类中使用可变的局部变量。

    规则四:可以访问外围类的成员变量。如果是static方法,则只能访问static修饰的成员变量。

    规则五:可以使用final 或 abstract修饰。

    综上,就是局部内部类的知识,其实局部内部类的名气远没有匿名内部类的名气大,但是作为一个匿名内部类的父概念,其定义了匿名内部类和普通的局部内部类的概念和特性,因此可以作为匿名内部类的知识补充。

    ---欢迎关注【Java圣斗士】,我是你们的小可爱(✪ω✪) Morty---

    ---专注IT职场经验、IT技术分享的灵魂写手---

    ---每天带你领略IT的魅力---

    ---期待与您陪伴!---

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,772
精华内容 4,308
关键字:

局部内部类