Java基础知识(上)

---------------------- QQ:371524846 期待与您交流! ----------------------

一、Java是什么?

  Java是由SUN(斯坦福大学网络公司)公司于1995年推出的一门面向Internet的计算机高级编程语言。

  计算机语言:人与计算机交流的方式。

二、Java语言特点:

  Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。

  Java和C++最大的不同在于Java采用的指针模型可以消除重写内容和损坏数据的可能性。

三、java语言的三种技术架构:

  JavaEE(Java Platform Enterprise Edition)企业版:
  是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如Servlet Jsp等,主要针对于Web应用程序开发。
  JavaSE(Java Platform Standard Edition)标准版:
  是为开发普通桌面和商务应用程序提供的解决方案。该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。比如Java版的扫雷。
  JavaME(Java Platform Micro Edition)小型版:
  是为开发电子消费产品和嵌入式设备提供的解决方案。该技术体系主要应用于小型电子消费类产品,如手机中的应用程序等。

三、1. 常用的DOS命令

    1.1 cd\ 路径(目录)退出到根目录
    1.2 dir 列出当前目录下的所有文件 格式:dir [盘符:][路径][文件名] [参数]
    1.3 md 创建文件夹命令 格式: md [盘符][路径]
    1.4 cd 进入文件夹 格式: cd [路径]
    1.5 cd.. 退到上一级文件夹
    1.6 rd 删除文件夹 格式: rd [盘符][路径]
    1.7 del 删除文件 格式: del [盘符][路径][文件名.] [参数]
    1.8 cls 清屏

  2.JVM、JRE和JDK的区别:
    JVM(Java Virtual Machine): Java虚拟机,用于保证Java跨平台的特性。  注:Java语言跨平台,jvm不跨平台。
    JRE(Java Runtime Environment): Java运行环境,包括jvm+java的核心类库。
    JDK(Java Development Kit): Java的开发工具,包括jre+开发工具。

  3. path和classpath
    path - ->Javac.exe使用
    classpath- ->java.exe使用
    区别:Path针对与Windows可执行文件(.exe);而classpath针对与Java字节码文件(.class)。


四、关键字

  关键字的定义和特点
  定义:被Java语言赋予了特殊含义的单词
  特点:关键字中所有字母都为小写

  1.定义数据类型的关键字:
  引用类型class,interface
  整数类型:byte,short,int,long   浮点类型:float,double
  字符类型:char          布尔类型:boolean
     void

  2.定义数据类型值的关键字:true,false,null

  3.定义流程控制的关键字:if,else,switch,case,default,while,do,for,break,continue,return

  4.定义访问权限修饰符的关键字:private,protected,public

  5.定义类、函数、变量修饰符的关键字:abstract,final,static,synchronized

  6.定义类于类之间关系的关键字:extends,implements

  7.用于定义建立实例及引用实例,判断实例的关键字:new,this,super,instanceof

  8.用于异常处置的关键字:try,catch,finally,throw,throws

  9.用于包的关键字:package,import

  10.其他修饰符关键字:native,strictfp,transient,volatile,assert

五、标识符

  由26个英文字母大小写,数字:0-9 符号:_ $ 组成
  定义合法标识符规则:
    ㈠ 数字不可以开头。
    ㈡ 不可以使用关键字。
  注意:Java中严格区分大小写,尽量起有意义的名字

  Java中的名称规范:
    包名:多单词组成时所有字母都小写。 eg: xxxyyyzzz
    类名接口名:多单词组成时,所有单词的首字母大写。eg: XxxYyyZzz
    变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。eg: xxxYyyZzz
    常量名:所有字母都大写。多单词时每个单词用下划线连接。eg: XXX_YYY_ZZZ

六、注释:

  单行注释//
  多行注释/* */
  独有注释,文档注释 /** */
  注:帮助文档的制作  javadoc –d myhelp (文件夹名称)–author(打印作者) –version(打印版本) ArrayTool.java(java文件名)

七、常量与变量

  1,常量:

  在java中,使用final声明常量,变量名要全部大写。。如:

  public static final double PI = 3.1415926;

  注意:

  a.声明变量并赋初值后,这个值就不能再更改了。

  b.类常量的声明位于main方法的外部,或无main函数的类的全局中的位置。这样,可以在同一个类中的其他地方使用这个常量。

2,变量:

  定义变量的格式: 数据类型 变量名 = 初始化值;

  注:格式是固定的,记住格式,以不变应万变。

八、数据类型

  1.java中的数据类型分为基本数据类型和引用数据类型。
  基本数据类型:
  整数类型:byte sort int long 浮点数据类型:float double 字符型:char 布尔型:boolean
  引用数据类型:类 class 接口 interface 数组[ ]

  byte: 字节型 -------> 1字节,取值范围:(-2E7 ~ 2E7 - 1)-128 ~ 127

  short:短整型 -------> 2字节,取值范围:(-2E15 ~ 2E15 - 1)-32768 ~ 32767

  int: 整型 -------> 4字节,取值范围:(-2E31 ~ 2E31 - 1)-2147483648 ~ 214748367 ---超过20亿

  long: 长整型 -------> 8字节,取值范围:(-2E61 ~ 2E61 - 1)-9 223 372 036 854 775 808 ~ 9 223 372 036 854 775 807

  float: 单精度浮点型 -------> 4字节,取值范围:大约± 3.402 823 47E + 38F(有效位6 ~ 7位)

  double:双精度浮点型 -------> 8字节,取值范围:大约± 1.797 693 134 862 315 70E + 308(有效位15位)

  char:字符型 ------->用于表示单个字符。如‘A’。

  boolean:布尔型 ------->表示逻辑判断条件,有两个值为true和false。

  2.基本数据类型说明:

       整数默认:int 小数默认:double

       基本数据类型的初始化:

       整型默认初始化为: 0 字符型默认初始化为:null

       浮点型默认初始化为: 0.0(f) 布尔型默认初始化为:false

  3.自动类型转换

      a.所有byte、short、char类型的值将提升为int类型。

      b.自动类型转换关系:byte -->short(char) -->int -->long -->float -->double

  4.强制类型转换:

       格式:int i = (int)3.38;,就是将“大”数据强转为“小”数据。 注:强转会损失精度。

九、运算符

  1.算术运算符:

    1.1 +、-、*、/、%、++、--
    1.2 取模(即取余)a%b
      a<b时,结果为a;例如:-3%5,结果是-3
      a>b时,结果为余;例如:5%3,结果是3
      结果符号与a的符号相同。
    1.3 ++和--
    eg: int a=10;
      a++;++a;
      a--;--a;
    把a的值赋给临时开辟的空间的先后顺序。
    注:自增与自减是在本空间中运算的,不做检查!编译不会出错,但运行时可能会出问题。
    eg: byte b = -128;
      b--;
      System.out.println("b = "+b);

  2.赋值运算符

  = , +=, -=, *=, /=, %=
  注:复合赋值运算符:+= ,-= ,*= , /= ,%= 一次运算,自动完成强转操作。

  3.比较运算符

  ==,!=,<,>,<=,>=,instanceof
  比较运算符的结果都是boolean

  4.逻辑运算符

    4.1 &,&&(并且):两边都为true才是true,否则为false;
    4.2 |,|| (或者) :两边都为false才为false,否则为true;
    4.3 ^(逻辑异或)(最不常用的): 两边相同结果为false,两边不同结果才是true。
    4.4 ! (逻辑非):非真即假。
    4.5 &和&&,|和||的特点:
    4.6 & 无论左边是true是false,右边都运算。
    4.7 && 当左边为false时,右边不运算。
    4.8 | 两边都参与运算;||当左边为true时,右边不运算。
    4.9 ||和&&是短路效应。

  5.条件运算符(三元运算符):
  
    5.1 格式: (条件表达式)?表达式1:表达式2;
    5.2 如果条件为true,运算后的结果是表达式1;
    5.3 如果条件为false,运算后的结果是表达式2.

  6.位运算符

    位运算是直接对二进制进行运算。(掌握)

    6.1 << (左移 ) : 其实就是这个数乘以2的移动的位数次幂。
      eg:3<<2 - ->3 * 22 =12

    6.2 >> ( 右移) :就是这个数除以2的移动的位数次幂。
      eg:6>>2 - ->6/22 =1
    6.3 >>>(无符号右移): 带符号的不能用它。
      >>:最高位补什么由原有数据的最高位的值而定。
      >>>:无论最高位是什么,右移后,都用0补上。
    6.4 &(按位与),|(按位或),^(按位异或) 可以作为位运算符;
    6.5 ^ (异或):一个数异或同一个数两次,结果还是那个数。(此种方法一般用于加密)
      eg: 7 ^ 4 ^ 4 = 7
    6.6 ~ (取反码)也可以作为位运算符。
      反码运算: 取反减一,再取反,带上正负就是它的值。
      eg: ~0x5d14 = -23828 (十六进制直接转换十进制带上负号)
        ~6 = -7
        000...000110
        111...111001 //取反
        000...000001
        111...111000 //减一的值
        000...000111 //再取反

 

 

---------------------- QQ:371524846 期待与您交流! ----------------------

 

posted @ 2013-08-14 22:26  JunKwok  阅读(1049)  评论(3编辑  收藏  举报