黑马程序员_Java环境搭建及语言基础

时间:2014-07-21 00:20:32   收藏:0   阅读:388

- - - - android培训java培训、期待与您交流!- - - - - -

JRE和JDK

JRE:Java Runtime Environment,java运行环境。

JDK:Java Development Kit,java开发工具包。

使用JDK开发java程序,交给JRE运行。

JDK下载和安装

http://www.oracle.com/technetwork/java/javase/downloads/index.html

JDK的目录结构

目录/文件名 功能说明 
 bin  包含编译器、解释器等可执行文件
 include  编写JNDI等程序需要的C语言头文件
 jre  Java运行时环境
 lib  Java类库
 src.zip  核心API所有类的源文件

 

 

 

 

 

 

 bin中的主要工具(JDK常用命令) 

文件名 功能说明
javac.exe Java编译器,将Java源程序编译成字节码文件
java.exe Java解释器,执行字节码文件对应的Java类
javadoc.exe 根据Java源码及说明语句生成HTML文档
jar.exe 压缩文件,扩展名为JAR(Java Archive,Java归档),与Zip压缩文件格式相同
jdb.exe Java调试器,可以逐行执行程序,设置断点和检查变量
appletviewer.exe Applet应用程序浏览器

 

 

 

 

 

 

 

 

环境变量的配置

右击“我的电脑” —> “属性” —> “高级” —> “环境变量”,在“系统变量”里我们可以看到系统的各个环境变量的值。

为什么需要配置path?

path也就是系统变量,它会告诉操作系统可执行文件(*.exe,*.bat)所在的路径。对于操作系统而言,当它要使用某个*.exe 时,会先从当前目录查找这个命令,如果查找不到,OS就会到path所设定的路径去查找该命令,然后执行。

什么时候需要配置classpath?

classpath是告诉java虚拟机(jvm)要使用或执行的*.class文件放在什么地方。

配置好后在任意目录下运行javac,java命令

C:\Users\Administrator\Desktop>javac
用法: javac <options> <source files>
其中, 可能的选项包括:
  -g                         生成所有调试信息
  -g:none                    不生成任何调试信息
  -g:{lines,vars,source}     只生成某些调试信息
  -nowarn                    不生成任何警告
  -verbose                   输出有关编译器正在执行的操作的消息
  -deprecation               输出使用已过时的 API 的源位置
  -classpath <路径>            指定查找用户类文件和注释处理程序的位置
  -cp <路径>                   指定查找用户类文件和注释处理程序的位置
  -sourcepath <路径>           指定查找输入源文件的位置
  -bootclasspath <路径>        覆盖引导类文件的位置
  -extdirs <目录>              覆盖所安装扩展的位置
  -endorseddirs <目录>         覆盖签名的标准路径的位置

临时配置

 E:\>set classpath=E:\  和  E:\>set classpath=E:\;  的区别

加分号的时候,首先在环境变量的目录下搜索class文件,如果没有找到,再在当前目录搜索class文件。

不加分号的时候,如果在环境变量的目录下没有搜索到class文件,不再在当前目录中搜索。

数据类型

bubuko.com,布布扣

基本数据类型包装类是按照面向对象的思想讲基本数据类型封装成了对象

基本数据类型  对象包装类 
 byte  Byte
 short  Short
 int  Integer
 long  Long
 boolean  Boolean
 float  Float
 double  Double
 char  Charactor

 

  

 

 

 

 

 

 

 

类型对象包装类都是final类

好处

    1. 基本数据类型转成字符串: Integer.toString(34);//将34整数变成"34";
    2. 字符串转成基本数据类型。
      • xxx a = Xxx.parseXxx(String);
      • int a = Integer.parseInt("123");
      • double b = Double.parseDouble("12.23");
      • boolean b = Boolean.parseBoolean("true");

Integer i = new Integer("123");

int num = i.intValue();

 整数进制转换

bubuko.com,布布扣

十进制转成其他进制

 其他进制转成十进制

int x = Integer.parseInt("110",10);
int x1 = Integer.parseInt("110",2);
System.out.println(x);//110
System.out.println(x1);//6

 负数的二进制

bubuko.com,布布扣

逻辑运算符

bubuko.com,布布扣

"&"  和  "&&"  的区别

位运算符

bubuko.com,布布扣

package test;

/**
 * ^的运算方法是 相同为0,相反为1
 * |的运算方法是 有1则为1
 * &的运算方式是 有0则为0
 * ~的运算方法是 求反,负数的二进制表示就是该负数的绝对值的二进制数按位取反再加一
 * >>n的运算方式 右移n位,正填0,负填1,正数x/(2^n)
 * <<n的运算方式 左移n位,正填0,负填1,正数x*(2^n)
 * >>>n的运算方式  不带符号右移n位,填0,32位系统是该数前补足32个0,64位补足64个0
 */

public class TestOperation {
	
	public static void main(String[] args) {
		System.out.println(1^2);
		/*
		 * 1 001
		 * 2 010
		 * 3 011
		 */
		
		System.out.println(4^5);
		/*
		 * 4 100
		 * 5 101
		 * 1 001
		 */
		
		System.out.println(15^21);
		/*
		 * 15 01111
		 * 21 10101
		 * 26 11010
		 */
		
		System.out.println("");
		
		System.out.println(1&2);
		/*
		 * 1 001
		 * 2 010
		 * 0 000
		 */
		
		System.out.println(4&5);
		/*
		 * 4 100
		 * 5 101
		 * 4 100
		 */
		
		System.out.println(15&21);
		/*
		 * 15 01111
		 * 21 10101
		 * 5  00101
		 */
		
		System.out.println("-----");
		
		System.out.println(~5);
		
		/*
		 * 5 00000101
		 *-6 11111010
		 *   00000101+1
		 * 
		 */
		
		System.out.println(~21);
		
		/*
		 * 21 00010101
		 *-22 11101010
		 *    00010101+1
		 *  
		 */
		
		System.out.println(~-16);
		
		/*
		 *-16 11110000
		 * 15 00001111
		 */
		
		System.out.println("");
		
		System.out.println(15<<2);
		
		/*
		 * 15 0001111
		 * 60 0111100
		 */

		System.out.println("-----");
		
		System.out.println(-5>>>2);
		
		/*
		 *  5 00000101
		 * -5 11111011
		 *    2^32右移2个0
		 */
		
		System.out.println(-5>>>30);
		
		/*
		 * -5 11111011
		 *    2^32右移30个0
		 *    00000011
		 */
	}
}

移位运算的总结

对于左移运算:

对于右移运算:

在对byte 和short类型的值进行移位运算时 , Java将自动把这些类型扩大为 int 型,而且,移位后的值也是int 型;如果左移不超过31位,原来对应各位的值不会丢弃。但是,如果你对一个负的byte 或者short类型的值进行移位运算,它被扩大为int 型后,它的符号也被扩展,结果的高位就会被1填充。因此,为了得到正确的结果,你就要舍弃得到结果的高位。这样做的最简单办法是将移位运算的结果再转换成 byte 型 。

无符号右移(>>>) 与 右移(>>)的区别

 

 

 

黑马程序员_Java环境搭建及语言基础,布布扣,bubuko.com

原文:http://www.cnblogs.com/iadanac/p/3826324.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!