Java学习 10/15

1.内部类

  Java的内部类可分为Inner Class(内部类)、Anonymous Class(匿名类)和Static Nested Class(静态内部类)三种:
  Inner Class和Anonymous Class本质上是相同的,都必须依附于Outer Class的实例,即隐含地持有Outer.this实例,并拥有Outer Class的private访问权限;
  匿名类定义方法:

    //例子
    Runnable r = new Runnable(){
        @override
        public void run(){
            System.out.println("f**k U MM!");
        }
    }

  Static Nested Class是独立类,无法访问外部类的实例Outer.this,但拥有Outer Class的静态字段、静态方法的private访问权限。

2.classpath

  classpath即一个JVM用来决定搜索class的路径和顺序的环境变量;classpath是一组.class文件存储路径的集合。
  不推荐设置系统环境变量classpath,建议在启动JVM时,通过-cp命令或-classpath命令传入;

    java -cp .:/usr/local/bin xxx.xxx

3.jar包

  jar包相当于目录,可以包含很多.class文件,方便下载和使用;
  jar包中包含的MANIFEST.MF文件可以提供jar包的信息,如Main-Class,这样可以直接运行jar包,无需在启动JVM时指定启动类。

    java -jar xxx.jar

  classpath和jar包从一定意义上来说,都是用来告诉JVM去哪里找待执行的字节码文件(.class)。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容