Java 成员内部类

1、成员内部类里面不能有单纯的static的方法或者属性(如果要定义static的属性必须要是final的)
2、创建成员内部类的对象的时候必须要先创建外部类的对象在创建内部类的对象格式如下:
 new 外部类().new 内部类();
3、成员内部类里面如果希望访问外部类的成员变量需要用到外部类的类名.this.属性名称;
4、成员内部类里面的成员方法访问外部类里面的成员方法的时候需要用到外部类的类名.this.方法名();

 1 public class InnerClass
 2 {
 3     public int age = 20;
 4     public static int width = 30;
 5
 6     public void test()
 7     {
 8         this.new Inner();
 9         System.out.println("test");
10     }
11
12     public static void test1()
13     {
14         System.out.println("test1");
15     }
16
17     //定义一个成员内部类
18     class Inner
19     {
20         public int age = 30;
21         public static final int width = 50;
22
23         public void test()
24         {
25             InnerClass.this.test();
26             System.out.println("testa" + InnerClass.this.age);
27         }
28
29         public void test1()
30         {
31             InnerClass.test1();
32             System.out.println("testb" + InnerClass.width);
33         }
34     }
35
36     public static void main(String[] args)
37     {
38         //定义内部类的对象
39         InnerClass.Inner inner = new InnerClass().new Inner();
40
41         inner.test();
42         inner.test1();
43     }
44 }
时间: 2024-12-08 01:08:09

Java 成员内部类的相关文章

java成员内部类

在阅读JAVA一些数据结构源代码的时候,经常会发现成员内部类的使用,如Hashmap中的Node和TreeNode,所以我们就来把它归纳总结一下 1.成员内部类 (1)内外部的访问权限 构造一个外部类和内部类 public class Out { private String str="outStr"; private void print() { System.out.println(str); } private class In{ public String inStr=&quo

20165230 2017-2018-2 《Java程序设计》第5周学习总结

20165230 2017-2018-2 <Java程序设计>第5周学习总结 教材学习内容总结 第七章 内部类与异常类 内部类与外嵌类 可以在类中定义另一个类,即内部类 包含内部类的类为内部类的外嵌类 外嵌类的成员变量在内部类中有效,类体中可用内部类声明对象 内嵌类的类体中不可以声明类变量和类方法,内部类中的方法可调用外嵌类的方法 内部类仅供外嵌类使用 内部类可为static内部类,即可用外嵌类.内部类的访问内部类,不可操作外嵌类中的实例成员变量 匿名类 创建和子类有关的匿名类对象: new

Java内部类小程序(成员内部类,静态内部类,匿名内部类)

1 /** 2 * 测试java内部类(成员内部类,静态内部类,匿名内部类) 3 * 局部内部类不常用,就不写了. 4 * @package :java05 5 * @author shaobn 6 * @Describe : 7 * @Time: 2015-9-6 下午8:32:38 8 */ 9 public class TestInner { 10 11 /** 12 * @author shaobn 13 * @Describe : 14 * @param args 15 * @Time

Java内部类详解--成员内部类,局部内部类,匿名内部类,静态内部类

说起内部类这个词,想必很多人都不陌生,但是又会觉得不熟悉.原因是平时编写代码时可能用到的场景不多,用得最多的是在有事件监听的情况下,并且即使用到也很少去总结内部类的用法.今天我们就来一探究竟.下面是本文的目录大纲: 一.内部类基础 二.深入理解内部类 三.内部类的使用场景和好处 四.常见的与内部类相关的笔试面试题 若有不正之处,请多谅解并欢迎批评指正. 请尊重作者劳动成果,转载请标明原文链接: http://www.cnblogs.com/dolphin0520/p/3811445.html 一

Java中的内部类(成员内部类、静态内部类、局部内部类、匿名内部类)

Java中的内部类(成员内部类.静态内部类.局部内部类.匿名内部类) 神话丿小王子的博客主页 我们先看这样一段话:人是由大脑.肢体.器官等身体结果组成.而组成我们人体的心脏它也有自己的属性和行为(血液.跳动),显然,此处不能单方面用属性或者方法表示一个心脏了,而需要一个类,但是这个类要依赖于人这个类存在(因为心脏不能脱离人体而存活,当然不考虑现今社会的发达科技,只从正常情况下来说),所心脏以需要写在人类的内部.内部类就相当于其中的某个器官之一. 首先看看什么是内部类:在类的内部定义另一个类.没错

Java内部类——成员内部类

成员内部类的意思就是,一个外层类里面包含着一个非static的class,举例如下: class OuterClass { //变量,函数定义... class InnerClass { //变量,函数定义... } } 关于成员内部类的各种使用情况: 1.成员内部类不能定义静态成员,原因如下: 对于java类加载顺序我们知道,首先加载类,执行static变量初始化,接下来执行对象的创建,如果我们要执行代码中的变量i初始化,那么必须先执行加载OuterClass,再加载InnerClass,最后

Java:内部类(静态内部类、成员内部类、局部内部类、匿名内部类)

Java基础_内部类:在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类. 内部类的主要作用:使用内部类可以减少命名冲突. 定义位置:一个内部类可以定义在一个类中,也可以在一个方法中,甚至在一个表达式中. 广义上讲,内部类分为四种: 静态内部类(static inner classes) 成员内部类(member inner classes) 局部内部类(local inner classes) 匿名内部类(anonymous inner classes) 1.静态

Java内部类:成员内部类(二)

Java内部类分为4个部分进行阐述,分别为概览.成员内部类.局部内部类和匿名内部类. 在本文中是Java内部类的成员内部类,主要讲述成员内部类的访问方式和一些细节. 成员内部类 成员内部类的访问方式 非static成员内部类 static成员内部类 外部类提供一个方法创建内部类的对象 直接创建内部类的对象 成员内部类要注意的细节 1.成员内部类的访问方式 成员内部类的访问方式,也可以理解为它的创建方式,主要分为两种:第一种是由外部类提供一个方法,用来创建内部类的对象,第二种方法直接创建内部类的对

java学习中,成员内部类、匿名内部类(java 学习中的小记录)

java学习中,成员内部类.匿名内部类(java 学习中的小记录)作者:王可利(Star·星星) 内部类: 一个类中定义另外一个类,这样的类叫内部类. 内部类的文件名:外部类名$内部类名.class    内部类分两种: 1.成员内部类 如何访问成员内部类:             方式1:外部类中定义一个方法来创建内部类对象,再通过对象进行访问.             方式2:可以直接在其他类中直接创建内部类这个对象,通过对象访问.用点语.                       格式: