• 内部类(奇葩的代码)


    内部类(奇葩的代码)

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

    • 成员内部类

    • 静态内部类

    • 局部内部类

    • 匿名内部类

    代码示例

    public class Outer {
    
        private int id = 10;
        public void out(){
            System.out.println("这是外部类的方法");
        }
    
        public class Inner{ //静态内部类public static class Inner
            public void in(){
                System.out.println("这是内部类的方法");
            }
    
            // 获得外部类的私有属性~
            public void getID(){
                System.out.println(id);
            }
        }
    
        //局部内部类
        public void method(){
            class Inner1{
                public void in1(){
    
                }
            }
        }
    
    }
    
    //一个java类中可以有多个class类,但是只能有一个public class
    class A{
        public static void main(String[] args) {
    
        }
    }
    

    测试

    import com.oop.demo10.Outer;
    
    public class Application {
        public static void main(String[] args) {
           //new
            Outer outer = new Outer();
    
            //通过这个外部类来实例化内部类~
            Outer.Inner inner = outer.new Inner();
            inner.in();
            inner.getID();
    
        }
    
    }
    

    匿名内部类

    //思想 操作 学无止境
    
    public class Test {
        public static void main(String[] args) {
            //Apple apple = new Apple();
            //没有名字初始化类,不用将实例保存到变量中
            //匿名内部类
            new Apple().eat();
    
            //匿名内部类
            new UserService(){
    
                @Override
                public void hello() {
    
                }
            };
        }
    }
    
    class Apple{
        public void eat(){
            System.out.println("1");
        }
    }
    
    interface UserService{
        void hello();
    }
    
  • 相关阅读:
    算法:归并排序
    算法:希尔排序
    算法:插入排序
    算法:冒泡排序
    算法:选择排序
    jQuery
    (二)多线程之开启线程的两种方式
    (一)多线程之线程理论
    (四)多进程之队列与生产者消费者模型
    (三)多进程之守护进程与互斥锁
  • 原文地址:https://www.cnblogs.com/helloxiaolu/p/13296839.html
Copyright © 2020-2023  润新知