内部类(了解)

成员内部类

 package oop.demon01.demon10;
 ​
 public class Outer {
 ​
     private int id = 10;
     public void out(){
         System.out.println("这是外部类的方法");
    }
 ​
    public class Inner{
         public void in(){
             System.out.println("这是内部类的方法");
        }
         //获得外部类的私有属性、方法
        public void getID(){
            System.out.println(id);
        }
 ​
    }
 }
 --------------------------
 package oop.demon01.demon10;
 ​
 public class Application {
     public static void main(String[] args) {
         //new
 ​
         Outer outer=new Outer();
 ​
         //通过外部类来实例化内部类~
         Outer.Inner inner = outer.new Inner();
         inner.in();
         inner.getID();
 ​
    }
 }
 ​

静态内部类

 package oop.demon01.demon10;
 ​
 public class Outer {
 ​
    private static int id = 10;
    public void out(){
        System.out.println("这是外部类的方法");
    }
 ​
    public static class Inner{
        public void in(){
            System.out.println("这是内部类的方法");
        }
    }
 }

注意:

 package oop.demon01.demon10;
 ​
 public class Outer {
 ​
 }
 //一个Java类中可以有多个class类,但是只能有一个 public class
 class A{
     public static void main(String[] args) {
         
    }
 }
 ....

局部内部类

 package oop.demon01.demon10;
 ​
 public class Outer {
     
    //局部内部类(在方法里面写的类)
    public void method(){
        class Inner{
             
        }
    }
 }

匿名内部类

 package oop.demon01.demon10;
 ​
 public class Test {
     public static void main(String[] args) {
         //没有名字初始化类,不用实例保存到变量中~
         new Apple().eat();// 1
         //Apple apple=new Apple(); 没有输出结果的
 ​
         UserService userService = new UserService() {
             //接口需要重写
             @Override
             public void Hello() {
                 
            }
        };
 ​
    }
 }
 ​
 class Apple{
     public void eat(){
         System.out.println("1");
    }
 }
 interface UserService{
     void Hello();
 }

Java面向对象15——内部类的更多相关文章

  1. JAVA面向对象-----局部内部类

    局部内部类 局部内部类概述:包含在外部类的函数中的内部类称之为局部内部类. 访问:可以在包含局部内部类的方法中直接创建局部内部类的对象调用局部内部类的成员. 注意:局部内部类只能访问所在函数的fana ...

  2. LY.JAVA面向对象编程.内部类

    2018-07-18 10:14:48 /* 内部类概述: 把类定义在其他类的内部,这个类就被称为内部类. 举例:在类A中定义了一个类B,类B就是内部类. 内部的访问特点: A:内部类可以直接访问外部 ...

  3. java基础15 内部类(成员内部类、局部内部类)和匿名内部类

    一.内部类 1.1.1.成员内部类 一个类定义在另一个类的内部,那么该类就叫作成员内部类 1.1.2.成员内部类访问方式 方式一:在外部类中提供一个方法创建内部类的对象进行访问       方式二:在 ...

  4. Java面向对象_内部类

    概念:内部类就是类的内部定义的类 成员内部类格式如下:class Outer{ class Inner{} } 编译上述代码会产生两个文件:Outer.class和Outer$Inner.class ...

  5. Java面向对象 Object类 内部类

     Java面向对象 Object类    内部类 知识概要:                 一:Object类                 二:内部类 匿名内部类的写法 1.Object O ...

  6. JAVA面向对象-----内部类的概述

    JAVA面向对象-–内部类的概述s 将类定义在另一个类的内部则成为内部类.其实就是类定义的位置发生了变化. 在一个类中,定义在类中的叫成员变量,定义在函数中的叫成员函数,那么根据类定义的位置也可以分为 ...

  7. Java面向对象程序设计第14章3-8和第15章6

    Java面向对象程序设计第14章3-8和第15章6 3.完成下面方法中的代码,要求建立一个缓冲区,将字节输入流中的内容转为字符串. import java.io.*; public class tes ...

  8. 如何讲清楚 Java 面向对象的问题与知识?(类与对象,封装,继承,多态,接口,内部类...)

    写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解.所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项 ...

  9. 深入java面向对象四:Java 内部类种类及使用解析(转)

    内部类Inner Class 将相关的类组织在一起,从而降低了命名空间的混乱. 一个内部类可以定义在另一个类里,可以定义在函数里,甚至可以作为一个表达式的一部分. Java中的内部类共分为四种: 静态 ...

随机推荐

  1. 如何在Vue的项目里对element的表单验证进行封装

    介绍需求 熟悉并优化公司项目的第五天,领导说能不能把表单验证封装一下,我打开代码一看 由于是后台管理系统,无数个需要验证的输入框,由于截图长度受限,只能展示部分,类似于这种页面还有无数个!代码重复率非 ...

  2. Mongo3基础操作

    由于3.X的文档是在3.X当前最新版本前记录,所以这里列出一些常用的操作,比如建立库,删除库,等一些格式,然后在描述开启远程和创建用户的一些区别,以及讲解2.X和3.X配置文件区别. 1. Mongo ...

  3. 15、nginx编译安装

    15.1.nginx介绍: 1.Nginx是一个开源,支持高性能,高并发的www服务和代理服务软件,由俄罗斯人开发,是开源的,nginx因具有高并发(特别是静态的 资源).占用系统资源少等特性,且功能 ...

  4. centos 8 sonarqube 设置开机自启动解决方案

    编写开机自启动脚本 进入到开机自启动调用文件目录 vim /etc/systemd/system/sonarqube.service [Unit] Description=SonarQube serv ...

  5. 资源:Maven相关jar快速下载地址

    Maven下载海外jar包太慢,可以进入下面地址搜索下载 下载地址:https://www.findjar.com/

  6. Xshell怎么连接数据库

    之前一直用Navicat Premium链接数据库,其实在xshell也可以链接数据库,本文将先介绍如何用xshell链接数据库的方法. 1.打开xshell,连接上 输入指令:mysql -h 19 ...

  7. HCNA Routing&Switching之静态路由

    前文我们聊到了路由的相关概念和路由基础方面的话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14947897.html:今天我们聊聊静态路由相关话题: 回顾 ...

  8. yoyogo v1.7.5 发布, 独立依赖注入DI

    YoyoGo v1.7.5 YoyoGo (Go语言框架) 一个简单.轻量.快速.基于依赖注入的微服务框架( web .grpc ),支持Nacos/Consoul/Etcd/Eureka/k8s / ...

  9. C语言:监听键盘

    所谓键盘监听,就是用户按下某个键时系统做出相应的处理,本章讲到的输入输出函数也是键盘监听函数的一种,例如 getchar().getche().getch() 等.下面的代码演示了 getche() ...

  10. MYSQL 连接举例

    内连接:连接的多个数据必须存在才能连接select * from sjh14482条记录 create table sjha as ( select * from sjh1 limit 20 )sel ...