A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

关于内部类,如何访问外部类的属性,还有如何生成内部类对象

2 个回复

倒序浏览
  1. public class Test {
  2.         public static void main(String[] args) {
  3.                 new Test().demo2();
  4.                 System.out.println(Test.name);
  5.         }
  6.         private static String name = "heima";
  7.         private void demo1(){
  8.                 System.out.println("我是demo1方法");
  9.         }
  10.         class B{
  11.                 public void test(String str){// 传参数 修改 name 的值
  12.                         name = str;
  13.                         new Test().demo1();
  14.                         System.out.println("内部类B的test方法");
  15.                 }
  16.         }
  17.         public void demo2(){
  18.                 new Test().new B().test("haha");  // 创建此内部类的对象,并且调用它的方法。  重点看这
  19.         }
  20. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 赞一个!

查看全部评分

回复 使用道具 举报
1、要明确内部类有成员内部类、局部内部类、匿名内部类、及静态内部类
2、成员内部类是被包围在外部类内的类,成员内部类在外部类的成员的位置上,相当于外部类的一个非静态成员,成员内部类可以访问外部类的所有属性,包括私有的
3、局部内部类是被包围到方法中的类,局部内部类可以访问被final修饰的局部变量,以及其他的外部类的所有属性
4、静态内部类不能访问外部类的非static成员

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马