当编译源文件时,编译器常常需要识别出类型的有关信息.对于源文件中使用.扩展或实现的每个类或接口,编译器都需要其类型信息.这包括在源文件中没有明确提及.但通过继承提供信息的类和接口. 例如,当扩展 java.applet.Applet 时还要用到 Applet 的祖先类:java.awt.Panel . java.awt.Container. java.awt.Component 和 java.awt.Object. 当编译器需要类型信息时,它将查找定义类型的源文件或类文件.编译器先在自举类及扩展…
在每个人学习java的第一步,都是安装jdk ,jre,配置java_home,classpath,path. 为什么要做这些?在阅读java-core的时候,看到了原理,p141. 一 关于类的共享 为了使类能被多个程序共享,需要做到以下几步: 1.把类放到同一个目录中,且该目录是package树状结构的root目录:如将com.horstmann.corejava.Employee类添加在目录home/user/classdir下,这个Employee.class类文件就必须位于子目录/ho…
关于命令,还可以查看<Java 7程序设计>一书后面的附录A As per javac source docs, there are 4 kinds of options: standard public options, e.g. -classpath extended public options, beginning -X, e.g. -Xlint hidden options -- not public or documented, e.g. -fullversion even mor…
在OptionName类中的枚举定义如下: XLINT("-Xlint"), XLINT_CUSTOM("-Xlint:"), -Xlint     Enable all recommended warnings. In this release, enabling all available warnings is recommended.-Xlint:all   Enable all recommended warnings. In this release,…
1.-Akey[=value] Options to pass to annotation processors. These are not interpreted by javac directly, but are made available for use by individual processors. key should be one or more identifiers separated by ".".用于传递一个选项给处理器.只有在注解处理器上通过Suppor…
当我们在Windows控制台窗口执行程序时,输入如下命令: demo.exe > out.txt 就可以把demo程序的输出重定向到out.txt文件里面. 但是这种方法对于java和javac行不通,需要使用另外一种方法: javac -help 2> javac.txt java -help 2> java.txt 除此之外,javac还支持另一种形式: javac -help -Xstdout xx.txt…
//编译多个文件 javac  path_of_file_a/a.java path_of_file_b/b.java path_of_file_c/c.java   -cp(classpath) 与 -sourcepath 的区别与联系: 当 -sourcepath 没有指定时,在 -cp 路径里面搜索 .class 和 .java 文件, 当 -sourcepath 指定时,只搜索 -cp 路径下的 .class 文件,即使 -cp 路径下有要找的 .java 文件也会不搜索这个文件, 而 …
转自:http://www.blogjava.net/pdw2009/archive/2008/06/12/207413.html?opt=admin javac和java命令行中的-classpath选项这是个很基础的问题,但是因为基本上都是用现有的IDE工具 来开发java程序,所以很少有人意识到这一点.javac-classpath,设定要搜索类的路径,可以是目录,jar文件,zip文件(里面都是class文件),会覆盖掉所有在CLASSPATH里面的设定.-sourcepath, 设定要…
Path环境变量能够让你在任何路径都能使用命令,可能你百度谷歌了各种方案都无法解决javac无法使用的问题,那么你可以试试如下解决方案: 首先博主配置了JAVA_HOME 参数为 C:\Program Files (x86)\Java\jdk1.8.0_144 (根据不同的路径配置相应不同) 以及 CLASSPATH 参数为 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; (注意前面有个.代表当前路径) 然后再Path中添加了两个参数 %J…
一.背景 最近在使用记事本编写带有包名并且有继承关系的java代码并运行时发现出现了很多错误,经过努力一一被解决,今天我们来看一下会遇见哪些问题,并给出解决办法. 二.测试过程 1.父类代码 package com.hafiz.zhang; public class Fu { private Integer i ; public void sayHello(String name) { System.out.println("Hello " + name); } } 2.子类代码 pa…