好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

《java基础笔记》word版.doc

116页
  • 卖家[上传人]:xiao****1972
  • 文档编号:70864802
  • 上传时间:2019-01-18
  • 文档格式:DOC
  • 文档大小:853.10KB
  • / 116 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • Java day01=============================================================================================Java ------------ sun公司 1995几个特点:简单,安全,跨平台,面向对象,分布,健壮,解析,高性能,多线程,动态性,体系结构中立安全:允许用户使用指针,不允许操作指针跨平台:C++ : 源码 ----(编译)---->目标码 -----(连接)---->可执行文件 目标码:二进制机器码 c++中的源码是跨平台的c++中的指针其实是内存中的编号(地址) 一个字节 = 连续的8位二进制位 1G = 1024*1024*1024JAVA:源码 ----(编译)---->字节码 JAVA是字节码跨平台搭建Java开发环境: JDK/JRE/JVM什么是JDK:JAVA开发工具包(做JAVA开发是必须下载JDK)什么是JRE:JAVA的运行环境(若只运行JAVA文件只要下JRE就可以了)什么是JVM;JAVA虚拟机JVM(java虚拟机)功能:用来屏蔽不同系统的差异,为上层的字节码提供统一的运行环境。

      JDK下的bin目录:可执行文件(这些都是开发过程中所要用的命令如javac ,java)JDK下的JRE目录:BIN目录,LIB目录这里的BIN目录中放的是运行中用到的命令, LIB目录中放的都是JAR文件,JAR文件中放的都是一写编译好的字节码 打成JAR文件的目的:方便传输 LIB目录下的rt.jar,改文件下放的是JAVA开发的类库JDK下的SRC.ZIP包:放的是rt.jar包中的源码,而rt.jar中放的是对应的字节码设置环境变量: JAVA_HOME:代表JDK安装路径 =/opt/jdk1.6.0 d:/a/b/jdk1.6CLASSPATH:系统搜索类的路径 =. (指的是当前目录)PATH:命令的搜索路径 =/opt/jdk1.6.0/bin 或 =$PATH:/opt/jdk1.6.0/bin 或 =$PATH:$JAVA_HOME/bi $PATH: 在原先的PATH基础上加上其它路径\--------------------------------------------------------------------------第一个JAVA代码 第一步: vi MyFirstJava.java 第二步:public class MyFirstJava{ ----------------- 定义一个类 public static void main(String[] args){ ------ 主方法格式固定 String name="tangliang"; ---- 定义一个变量为字符串,字符串值用双引号来引起 int age=30; ------定义一个整数类型值为30 System.out.println("my name is:"+name); --- 输出语句()里是要输出的内容 System.out.println("my age is:"+age); ---- JAVA中加号也可以做字符串的链接 }}第三步: javac MyFirstJava.java ----- 编译源代码文件(跟源文件名) 第四步: java MyFirstJava ----- 执行字节码文件(跟的是类名)通配符号编译:javac my*.java ---------- 编译以my字母开头的所有java文件带包编译:javac -d . PackageTest.java带包执行:java sd0807.day01.PackageTest Public被称作为访问修饰符 ---- 作用是:控制程序的其他部分对该部分的访问级别 Class表面JAVA程序中的全部内容是包含在类中的。

      注意点: 1. 一个JAVA源文件只能定义一个public类2. 而且PUBLIC修饰的类名必须同文件名一致(大小写也要一直)3. 可以定义其他非public类.4. 字节码文件与类一一对应,而不是同你的源文件一一对应.5. 可以运行的JAVA方法的文件,一定要包含一个主方法,而且主方法签名是固定的6. 包含主方法的类叫 主类,java命令后跟的是主类的名字7. main方法是程序的入口包的定义(目的是确保类名的唯一性)包用来放所写文件的目录.怎么来声明一个包: package SD0807.day01; --- 包的定义(可以是0或1行,若声明则必须在java文件第一行)++++++++++++++++++++++++++++++++++++++++++++++++package SD0807.day01; public class PackgeTest{ public static void main(String[] args){ System.out.println("Package Test!"); } } ++++++++++++++++++++++++++++++++++++++++++++++++带包编译:javac -d . PackageTest.java带包执行:java sd0807.day01.PackageTest若java PackageTest 其实它将类找到了,只是它找到是带包的类,而命令里面是不带包的,所以会报错。

      为什么执行带包的类要加路径名???(由于JAVA命令的执行步骤)java命令的三个步骤: 1,找到类的字节码文件 2,加载类--从磁盘中去读取对应的类,到哪里去找就是从(classpath中配置的路径) 3,找主方法执行若从网上下一写工具包必须在classpath中配置工具包所在的位置,这样我们就可以使用该工具包想使用中间件,这样classpath必须指向对应的xxx.jar 而在JDK中的rt.jar我们没有配置上, 却能用到里面对应的类,因为她自动会去找JRE/lib/rt.jar找rt.jar // 放在 jdk1.6.0/jre/lib/rt.jar使用api 提供的类,java虚拟机是怎么找到的? 就在rt.jar ;里, 即使不设到 CLASSPATH 下虚拟机也能运行;++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 例子: 第一步:(写类) ToolA类: package com.tarena; public class ToolA{ public static void main(String[] args){ System.out.println("ToolA"); } } Test类: package com.tarena.day01; public class Test{ public static void main(String[] args){ ToolA t = new ToolA(); System.out.println("test"); } } 第二步:(编译) javac -d . ToolA.java ----- 可以编译(生成一个文件夹为com) javac -d . Test.java -----直接编译Test.java会出错,因为用到了ToolA类 第三步:(把类ToolA打包) jar -cvf abc.jar ./com ---------- ToolA类在包com.tarena 下 将产生的abc.jar包放到任意的目录下,这里放到aa目录。

      第四步:配置ToolA类的 classpath=d:\aa\abc.jar 第五步:(编译Test类) javac -d . Test.java ----- 可以编译 第六步:(执行) java com.tarena.day01.Test 也可以执行ToolA类 java com.tarena.ToolA+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++找对应类的顺序: 1,在当前包下找(所以注意不要在自己的包下创建和JDK中同名的类,这样在调用JDK 中同名的类回出错) 2,在rt.jar中找 3,在 classpath中指定的路径下找+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++如果自己在本包中定义了一个String类这样下面代码会出错: public class Ab{ public static void main(String[] args){ System.out.println("aaaaa"); } } ---------出现的错误是说主方法没找到。

      因为main参数中的String类不是JDK中的String类所以上面的main方法不是主方法了,只能是自己所定义的一个普通的类所以该类在编译的时候不报错,在执行的时候就会出错java.lang包下的类,可以不需给出包明,其它的都要给出包名,由于java.long包下的类很常用类的导入 import: 可以多行作用导入所要用到的类 java.lang包下的类,可以不需要导入,其它的包中的类都必须导入 怎么导入: import java.util.scanner; ------ 导入scanner类 import java.util.*; ---------- 导入该包下所有的类 package xxxxx;(0或1行) import xxxxxxx; (0或多行); class xxxxx{} (1个或多个但只有一个public class)静态导入: 不仅能导入类,还可以导入静态域两个实际用:1, 对算术函数的导入2, 笨拙的常量+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++常用命令:Javac ------ 编译命令Java ------ 运行命令Javadoc ----- 生成程序文档,在java 源文件中提取文档注释, 生。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.