一.什么是内部类? 内部类是指在一个外部类的内部再定义一个类.内部类作为外部类的一个成员,并且依附于外部类而存在的.内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权限). 内部类主要有一下几种:成员内部类.局部内部类.静态内部类.匿名内部类. 二.内部类的共性: (1).内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号 . (2).内部类不能用普通的方式访问. (3).内部类声明成…
一.内部类 1.1.1.成员内部类 一个类定义在另一个类的内部,那么该类就叫作成员内部类 1.1.2.成员内部类访问方式 方式一:在外部类中提供一个方法创建内部类的对象进行访问       方式二:在其他类中创建内部类的对象:   格式:外部类.内部类 变量名=new 外部类().new 内部类(); 注意:如果是一个静态的内部类,那么其他内的创建的格式                  外部类.内部类 变量名 = new 外部类.内部类(); 方式一: /* 方式一 */ //外部类 int…
不多说,直接上干货! 可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 内部类我们从外面看是非常容易理解的,无非就是在一个类的内部在定义一个类. public class OuterClass { private String name ; private int age; public String getName() { return name; } public voi…
有这样一种内部类,它是嵌套在方法和作用域内的,对于这个类的使用主要是应用与解决比较复杂的问题,想创建一个类来辅助我们的解决方案,到那时又不希望这个类是公共可用的,所以就产生了局部内部类,局部内部类和成员内部类一样被编译,只是它的作用域发生了改变,它只能在该方法和属性中被使用,出了该方法和属性就会失效. 匿名内部类,任意作用域中嵌入的内部类都属于局部内部类的范畴. <局部内部类> interface Destination { String readLabel(); } class Test00…
Java基础_内部类:在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类. 内部类的主要作用:使用内部类可以减少命名冲突. 定义位置:一个内部类可以定义在一个类中,也可以在一个方法中,甚至在一个表达式中. 广义上讲,内部类分为四种: 静态内部类(static inner classes) 成员内部类(member inner classes) 局部内部类(local inner classes) 匿名内部类(anonymous inner classes) 1.静态…
From: http://www.itzhai.com/java-based-notebook-a-static-inner-class-within-a-class-member-within-the-class-of-local-inner-classes-anonymous-inner-classes.html 内部类: 使用内部类减少了命名冲突. 一个内部类可以定义在一个类中,一个方法中甚至一个表达式中.内部类分为四种:静态内部类(static inner classes)成员内部类(m…
内部类,顾名思义,即定义在某个类内部的类,称包含该内部类的类为外部类. 从定义的位置来说,分为成员内部类和局部内部类:从类的特征来说,分为匿名内部类和静态内部类. 今天先简要介绍一下前三种内部类的定义及简单使用. 如需转载请注明出处,谢谢: http://www.cnblogs.com/chanchan/p/8235169.html 1.成员内部类 成员内部类可看成外部类的一个成员,定义的位置与外部类的其他成员一样,只不过它是个类而已. 示例: 类Person中定义了一个成员内部类InnerCl…
package cn.kecheng; /** * 在java中,一个文件可以定义多个类,文件名必须和public 类型的类的类名保持一致.这两个类是平行关系. * 在java中,一个类也可以定义在一个类的内部,定义在内部的类称为内部类(Internalclass), * 定义在外部的类称为外部类(InternalClass class). 内部类根据具体的修饰符和具体位置分为很多情况: * 1成员内部类:一个内部类作为一个外部类的成员而存在,此时该内部类称为外部类的成员内部类.(也就是说内部类…
1. 成员内部类分为  静态内部类 和 非静态内部类. 非静态内部类 和 外部类的其他成员一样处理, 非静态内部类可以访问外部类的private的属性,而外部类不能访问非静态内部类的属性,需要实例非静态内部类,然后操作其属性. 外部类对象访问非静态内部类成员时, 可能非静态普通类对象根本不存在,而非静态内部类对象访问外部类成员时,外部类对象一定是存在的. 静态成员不能访问非静态成员. 外部类依然不能直接访问静态内部类的成员,但可以使用静态内部类的类名作为调用者来访问静态内部类的类成员. 2. 内…
局部内部类特点: 1.定义在代码块.方法体内的类叫局部内部类 2.局部内部类访问外部类的属性和方法使用“外部类名.this.属性名”和“外部类名.this.方法名(参数)”的形式 3.对外部世界完全隐藏,只能在作用域内生成对象.局部内部类有以下限制: 1.局部类不能加访问修饰符,因为他们不是类成员 2.成员内部类不能与外部类重名 3.局部内部类访问作用域内的局部变量,该局部变量需要加final修饰 public class LocalInnerClass { public static void…