博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java内部类
阅读量:2167 次
发布时间:2019-05-01

本文共 1359 字,大约阅读时间需要 4 分钟。

内部类

概念

  • 内部类就是在一个类的内部再定义一个类, 比如, A类中定义了一个B类, 那么B类相对于A来说就是内部类, 而A类相对B类来说就是外部类了

  • 分类

    • 成员内部类
    public class Outer {
    private int id; public void out() {
    System.out.println("这是外部类的方法"); } public class Inner {
    public void in() {
    System.out.println("这是内部类的方法"); } public void getID() {
    //能获得外部类的私有属性和私有方法 System.out.println(id); } }}public class Program {
    public static void main(String[] args) {
    Outer outer = new Outer(); //通过这个外部类来实例化内部类 Outer.Inner inner = outer.new Inner(); inner.in(); }}
    • 静态内部类

    • 局部内部类

      public class Outer {
      //局部内部类 public void method() {
      class Inner {
      public void in() {
      } } }}
    • 匿名内部类

    public class Test {
    public static void main(String[] args) {
    Apple apple = new Apple(); //没有名字去初始化类, 不用将实例保存到变量中 //匿名内部类 new Apple().eat(); UserService userService = new UserService() {
    public void hello() {
    //方法体 } }; }}class Apple {
    public void eat() {
    System.out.println("1"); } }interface UserService {
    void hello();}

转载地址:http://bvvzb.baihongyu.com/

你可能感兴趣的文章
GAN 的 keras 实现
查看>>
AI 在 marketing 上的应用
查看>>
Logistic regression 为什么用 sigmoid ?
查看>>
Logistic Regression 为什么用极大似然函数
查看>>
SVM 的核函数选择和调参
查看>>
LightGBM 如何调参
查看>>
用 TensorFlow.js 在浏览器中训练神经网络
查看>>
cs230 深度学习 Lecture 2 编程作业: Logistic Regression with a Neural Network mindset
查看>>
梯度消失问题与如何选择激活函数
查看>>
为什么需要 Mini-batch 梯度下降,及 TensorFlow 应用举例
查看>>
为什么在优化算法中使用指数加权平均
查看>>
什么是 Q-learning
查看>>
用一个小游戏入门深度强化学习
查看>>
如何应用 BERT :Bidirectional Encoder Representations from Transformers
查看>>
5 分钟入门 Google 最强NLP模型:BERT
查看>>
强化学习第1课:像学自行车一样的强化学习
查看>>
强化学习第2课:强化学习,监督式学习,非监督式学习的区别
查看>>
强化学习第3课:有些问题就像个赌局
查看>>
强化学习第4课:这些都可以抽象为一个决策过程
查看>>
强化学习第5课:什么是马尔科夫决策过程
查看>>