【Java基础-Java语言基础】

 

知识点:1.关键字  2.标识符  3.变量和常量

 

一、关键字

  1.Java中的关键字有很多一共53个关键字有两个是保留字(java的关键字都是小写的!!)

  2.Java中的保留字

    (1)const  常量,数量 

    (2)goto   转到

  3.Java的关键字

    (1)访问修饰符的关键字(共3个)

关键字 意思 备注,常用
public 公有的 可跨包,(默认选择)
protected 受保护的 当前包内可用
private 私有的 当前类可用

    (2)定义类、接口、抽象类和实现接口、继承类的关键字、实例化对象(共6个)

 

    (3)包的关键字(共2个)

 

    (4)数据类型的关键字(共12个)

 

     (5)条件循环(流程控制)(共12个)

 

    (6)修饰方法、类、属性和变量(共9个)

 

static 例子:

          public class Test{

                  class A{}   //内部类

            ActionListener al=new ActionListener(···){}   //匿名内部类

          }

   静态块优先于其他方法/类的执行

     (7)错误处理(共5个)

throw是你执行的动作。比如你觉得可能有异常,那么就抱出去 如:

           String a; if(a == null),

            throw new exception("a为null");

           所以throw是一个抛出去的动作

   throws只用在一个方法的末端,表示这个方法体内部如果有异常,这抛给它的调用者。 如: public void add(int a, int b) throws Exception(); 这个方法表示,在执行这个方法的时候,可能产生一个异常,如果产生异常了,那么谁调用了这个方法,就抛给谁。(来自百度)

    (8)不知道是什么(共2个)

Enum:代表一组常用常量,可用来代表一类相同类型的常量值如:

性别:

public enum SexEnum {

  male, female;

}

颜色:

public enum Color {

  RED, BLUE,GREEN,BLACK;

}

枚举对象里面的值都必须是唯一的。

 

附:throw 和throws的差别

区别一:

 

             throw 是语句抛出一个异常;throws 是方法抛出一个异常;

 

              throw语法:throw <异常对象>

 

              在方法声明中,添加throws子句表示该方法将抛出异常。

 

             throws语法:[<修饰符>]<返回值类型><方法名>([<参数列表>])[throws<异常类>]

 

             其中:异常类可以声明多个,用逗号分割。

 

区别二:

 

          throws可以单独使用,但throw不能;

 

区别三:

 

            throw要么和try-catch-finally语句配套使用,要么与throws配套使用。但throws可以单独使用,然后再由处理异常的方法捕获。

 

 

 

 

 

 

 

 

 

 

 

throws E1,E2,E3 只是告诉程序这个方法可能会抛出这些个异常,方法的调用者可能要处理这些异常。而这些异常E1,E2,E3可能是该函数体产生的。

 

而throw是明确之处这个地方要抛出这个异常。

 

void doA() throws Exception1, Exception3 {

  try {

    ……

  } catch(Exception1 e) {

    throw e;

  } catch(Exception2 e) {

    System.out.println("出错了");

  }

  if (a != b)

    throw new Exception3("自定义异常");

}

 

代码块……中可能产生异常Exception1、Exception2和Exception3。

如果产生Exception1异常,则捕捉了之后抛出由该方法的调用者去做处理;

如果产生Exception2异常,则该方法自己做了处理(打印出了说出错了),所以该方法就不会再向外抛出Exception2异常了,void doA() throws Exception1,,Excpetion3里面的Exception2也就不用写了;

而Exception3异常是该方法的某段逻辑出错,程序员自己作了处理在该段逻辑错误的情况下抛出异常Exception3,则调用者也需要处理。

 

 

throw语句用在方法体内,表示抛出异常,由方法体内的语句处理 

throws语句用在方法声明后面,表示再抛出异常,由调用这个方法的上一级方法中的语句来处理

 

throws主要是声明这个方法会抛出这种类型的异常,使其他地方调用它时知道要捕获这个异常。

throw是具体向外抛异常的动作,所以它是抛出一个异常实例。

 

throws说明你有哪个可能,倾向 

throw的话,那就是你把那个倾向变成真实的了

同时:

1)throws出现在方法函数头;而throw出现在函数体; 

2)throws表示出现异常的一种可能性,并不一定会发生这些异常;throw则是抛出了异常,执行throw则一定抛出了某种异常; 

3)两者都是消极处理异常的方式(这里的消极并不是说这种方式不好),只是抛出或者可能抛出异常,但是不会由函数去处理异常,真正的处理异常由函数的上层调用处理。

 

 

 

二、标识符

标识符就是用于给 Java 程序中变量、类、方法等命名的符号。例:

使用标识符时,需要遵守几条规则:

 1.  标识符可以由字母、数字、下划线(_)、美元符($)组成,但不能包含 @、%、空格等其它特殊字符,不能以数字开头。譬如:123name 就是不合法滴

 2.  标识符不能是 Java 关键字和保留字( Java 预留的关键字,以后的升级版本中有可能作为关键字),但可以包含关键字和保留字。如:不可以使用 void 作为标识符,但是 Myvoid 可以

 3.  标识符是严格区分大小写的。 所以涅,一定要分清楚 imooc 和 IMooc 是两个不同的标识符哦!

 4.  标识符的命名最好能反映出其作用,做到见名知意

 

三、变量和常量

3.1 定义变量

变量名称由字母、数字、下划线(_)、美元符($)组成,但是不包括@、%、空格等,但是开头不能为数字。

变量的一些命名原则:

1.变量由多个单词组成时,第一个单词首字母小写,其后单词首字母大写,即驼峰式命名

2.变量命名时应该顾名思义,同时应该尽量简短

ps:Java中是区分大小写的,但是没有长度限制

 

3.2 数据类型

Java中数据类型包括基本数据类型和引用数据类型;基本数据类型存储数据本身,而引用数据类型则存储数据的地址。引用数据类型包括类、数据、接口,而引用数据类型包括数值型、字符型、布尔型。

数据类型    说明       字节      应用

int       整型        4           存储整数

float         单精度浮点型   4           存储小数

double        双精度浮点型   8           存储小数

char           字符型       2       存储一个字符,用‘ ’表示

boolean         布尔型       1       表示真假,只有ture或false

 

java 中 float 与 double 的区别

java中默认声明的小数是double类型的,如double d=4.0
如果声明: float x = 4.0则会报错,需要如下写法:float x = 4.0f或者float x = (float)4.0
其中4.0f后面的f只是为了区别double,并不代表任何数字上的意义
对编程人员而言,double 和 float 的区别是double精度高,但double消耗内存是float的两倍,且double的运算速度较float稍慢。java中的整数默认类型为int类型(占 内存32位),而float32位,16.0在float表示范围内,所以int类型可以向float类型转换;而java中小数默认类型是double,它不能向低位数的数据类型转换,否则受损。

 

3.3 自动类型转换和强制类型转换

 

1.目标类型能与源类型兼容,如 double 型兼容 int 型,但是char 型不能兼容int 型

 

2.目标类型大于源类型,如 double 类型长度为 8 字节,int 类型为4 字节,因此double 类型的变量里直接可以存放int 类型的数据,但反过来就不可以了

 

强制类型转换

 

double one = 12.6;
int another = (int)one;

 

 常量

它的值被设定后,在程序运行过程中不允许改变。

语法:final 常量名 = 值

常量名一般使用大写字符

 

final int SCORE = 100;

 

posted @ 2018-05-03 16:05  一粒尘埃丶流年  阅读(193)  评论(0编辑  收藏  举报