十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
内部类就是在一个类的内部在定义一个类,比如,A类中定义一个B类,那么B类相对A类来说就称为内部类,而A类相对B类来说就是外部类了。

1.成员内部类
2.静态内部类
3.局部内部类
4.匿名内部类
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);
        }
    }
}
public class Application {
    public static void main(String[] args) {
        Outer outer = new Outer();
        //通过这个外部类来实例化内部类
        Outer.Inner inner = outer.new Inner();
        inner.getId();
    }
}
public class Outer {
    private static int id = 10;
    public void out(){
        System.out.println("这是外部类的方法");
    }
    public static class Inner{
        public void in(){
            System.out.println("这是内部类的方法");
        }
        //获得外部类的私有属性
        public static void getId(){
            System.out.println(id);
        }
    }
}
public class Outer {
}
//一个Java类中可以有多个class类,但是只能有一个public class
class TestA{
    public static void main(String[] args) {
    }
}
public class Outer {
    
    //局部内部类
    public void method(){
        
        class Inner{
            public void in(){
                
            }
        }
    }
}
public class Test1 {
    public static void main(String[] args) {
        //没有名字初始化类,不用讲实例保存到变量中
        new Apple().eat();
        UserService userService = new UserService(){
            @Override
            public void hello() {
                
            }
        };
    }
}
class Apple{
    public void eat(){
        System.out.println("吃吃吃");
    }
}
interface UserService{
    void hello();
}
interrupted:判断当前线程是否已经中断,会清除状态
isInterrupted:判断线程是否已经中断,不会清除状态
在操作系统中,线程可以划分优先级,优先级较高的线程得到cpu资源比较多,也就是cpu有限执行优先级较高的线程对象中的任务,但是不能保证一定优先级高,就先执行。
Java的优先级分为1~10个等级,数字越大优先级越高,默认优先级大小为5。超出范围则抛出:
java.lang.IllegalArgumentException。
线程的优先级具有继承性,比如a线程启动b线程,b线程与a优先级是一样的。