Java语法-----内部类

DAY8

一、内部类
就是定义在类的内部的一个类
内部类特点:

  • 内部类拥有类的所有特点,只是所处的位置不同
  • 内部类可以直接访问外部类的成员
  • 外部类想访问内部类的成员,需要创建内部类的对象
    内部类的分类:
    成员位置:定义在类中方法外的类叫做成员内部类
    局部位置:定义在方法内部的类叫做局部内部类
    在这里插入图片描述
  • 成员内部类
    ①直接访问外部类的所有成员
    ②在外部如何访问内部的成员,需要创建内部类的对象
    案例展示:
    在这里插入图片描述
    注:成员内部类一般可以被static和private修饰
  • 被static修饰是为了访问方便;
  • 被private修饰是为了数据安全
    外部如何访问成员内部类的成员:
  • 访问非静态内部类的非静态方法:
    在这里插入图片描述
  • 访问静态内部类的非静态成员:
    在这里插入图片描述
  • 访问静态内部类的静态成员:
    在这里插入图片描述
    静态内部类的注意事项:
  • 静态内部类不一定拥有静态成员,有静态成员的内部类一定是一个静态内部类
    通俗案例:
  • 首先咱们一个人可以看成一个对象,可以用类来封装体现:一个人身体由很多器官组成,比如心脏,大脑…这些个器官也可以看成一个对象,也可以用一个类来表示,所以这些器官类应该是在身体累里面的,所以就是内部类,又因为心脏和大脑很重要,不能随便的暴露给外部使用,所以应该定义成private(私有的),如果外部想访问这些重要的器官类,需要身体累提供一个公共的访问方法
    在这里插入图片描述
  • 局部内部类
    就是定义在方法体位置上的类
    外部如果想访问局部内部类,只有在方法里面才能创建局部内部类的对象
    在这里插入图片描述
    因此:不论是成员内部类还是局部内部类都可以直接访问外部类的成员(包括所有的成员)
    在这里插入图片描述
    注意事项:上述①处标注:局部内部类访问局部变量在JDK1.8之前都需要加final的,在JDK1.8的时候不需要添加final
    为什么需要将局部变量声明成最终类型?
    因为局部内部类可能不知道局部变量改变之后的值,如果将局部变量声明为最终类型的话,那么这个局部变量就变成了常量,那么值也就不会发生改变了

    二、匿名内部类
    匿名:没有名字
    内部类:在类的内部定义的类
    匿名内部类的格式:
    在这里插入图片描述
    匿名内部类本质是一个集成一个类或者实现一个接口的子类的匿名对象
    当一个类或者一个接口里面有多个方法需要重写或者实现时,用匿名内部类如何调用了?
    可以定义一个引用来接收匿名对象
    当对象作为方法的实参传递时
    在这里插入图片描述
    三、开发工具eclipse的使用
    注意:新建工程的第一件事情就是将工程的编码改成UTF-8,windows—>preference—>WorkeSpaces—>改成UTF-8
  • eclipse是一个高级的开发工具,这个开发工具提供了很多快捷键,还可以自动的检查语法错误;
  • eclipse从www.eclipse.org这个网站进行下载的,直接下载绿色版本,直接解压执行eclipse.exe就可以运行了,最好将eclipse.exe发送到桌面快捷方式,方便下次使用;
  • 新建一个项目
    右击Project Explorer会出现很多菜单栏—>new Project—>Java Project—>给工程起个名字,然后下一步下一步就完成了
  • 在src存放源代码的文件夹中创建类
    选中src文件夹然后右击选择新建的类和包
  • 更改类中的字体
    window—>preference—>搜索Colors and Fonts,然后找到Basic—>Text Font—>双击选择你想要的字体
  • 运行Java程序
    选中main方法右击选择Run As—>Java Application
  • 更改快捷键
    windows—>preference—>搜索Keys—>搜索Java Application—>改成你自己喜欢的快捷键
    注意:这个快捷键在第一次使用的时候可能不毁生效
  • 快捷键
    Ctrl+1:万能键;
    Alt+/:代码提示补全;
    Ctrl+Alt+上下:赋值当前行;
    Alt+上下:移动当前行;
    Ctrl+D:删除所选中的行;
    Alt+Shift+R:联动更改名字;
    Ctrl+M:最大化或最小化代码窗口;
    Ctrl+W:关闭当前代码窗口;
    Ctrl+Shift+W:关闭所有的代码窗口;
    Shift+Enter:快速新建一行;
    按住Ctrl+鼠标左击或者直接F3:查看源码;
    Ctrl+Shift+o:导入需要的包,删除无用的包;
    Ctrl+o:快速搜索方法;
    Ctrl+T:查看类的继承体系;
  • 波浪线提醒
    黄色波浪线不影响程序的运行;
    红色波浪线如果不处理,程序就无法运行;

猜你喜欢

转载自blog.csdn.net/qq_36633450/article/details/84142753
今日推荐