Java基础知识 二(关键字、标识符、注释、数据类型、数据类型的转换)

1:关键字

 (1)被Java语言赋予特定含义的单词

 (2)特点: 全部小写。

 (3)注意事项:

  goto和const作为保留字存在。

用于定义数据类型的关键字

class

interface

byte

short

int

long

float

double

char

boolean

void





用于定义数据类型值的关键字

true

false

null



用于定义流程控制的关键字

if

else

switch

case

default

while

do

for

break

continue

return





 

用于定义访问权限修饰符的关键字

private

protected

public



用于定义类,函数,变量修饰符的关键字

abstract

final

static

synchronized


用于定义类与类之间关系的关键字

extends

implements




用于定义建立实例及引用实例,判断实例的关键字

new

this

super

instanceof


用于异常处理的关键字

try

catch

finally

throw

throws

用于包的关键字

package

import




其他修饰符关键字

native

strictfp

transient

volatile

assert

 

2:标识符

 (1)就是给类,接口,方法,变量等起名字的字符序列

 (2)组成规则:

  A:英文大小写字母

  B:数字

  C:$和_

 (3)注意事项:

  A:不能以数字开头

  B:不能是java中的关键字

  C:严格区分大小写

 (4)常见的命名规则(见名知意)

  A:包全部小写

   单级包:小写

    举例:liuyi,com

   多级包:小写,并用.隔开

    举例:cn.itcast,com.baidu

  B:类或者接口

   一个单词:首字母大写

    举例:Student,Demo

   多个单词:每个单词首字母大写

    举例:HelloWorld,StudentName

  C:方法或者变量

   一个单词:首字母小写

    举例:name,main

   多个单词:从第二个单词开始,每个单词首字母大写

    举例:studentAge,showAllNames()

  D:常量

   全部大写

   一个单词:大写

    举例:PI

   多个单词:大写,并用_隔开

   举例:STUDENT_MAX_AGE


3:注释

 (1)就是对程序进行解释说明的文字

 (2)分类:

  A:单行注释 

  B:多行注释

  C:文档注释(后面讲)

 (3)把HelloWorld案例写了一个带注释的版本。

  后面我们要写一个程序的过程。

  需求:

  分析:

  实现:

 (4)注释的作用

  A:解释说明程序,提高了代码的阅读性。

  B:可以帮助我们调试程序。

   后面我们会讲解一个更高端的一个调试工具


4:常量

 (1)在程序执行的过程中,其值不发生改变的量。

 (2)分类:

  A:字面值常量 :

  A:字符串常量 "hello"

  B:整数常量 12,23

  C:小数常量 12.345

  D:字符常量 'a','A','0'

  E:布尔常量 true,false

  F:空常量 null(后面讲)

  B:自定义常量(后面讲)

 (4)在Java中针对整数常量提供了四种表现形式

  A:二进制由0,1组成。以0b开头。

  B:八进制由0,1,...7组成。以0开头。

  C:十进制由0,1,...9组成。整数默认是十进制。

  D:十六进制由0,1,...9,a,b,c,d,e,f(大小写均可)组成。以0x开头。


5:进制转换(了解)

 (1)其他进制到十进制

  系数:就是每一个位上的数值

  基数:x进制的基数就是x

  权:对每一个位上的数据,从右,并且从0开始编号,对应的编号就是该数据的权。

  结论:系数*基数^权次幂之和。

 (2)十进制到其他进制

 结论:除基取余,直到商为0,余数反转。

 (3)进制转换的快速转换法

  A:十进制和二进制间的转换

   8421码。

  B:二进制到八进制,十六进制的转换


6:变量

 (1)在程序的执行过程中,其值在某个范围内可以发生改变的量

 (2)变量的定义格式:

  A:数据类型 变量名 = 初始化值;     int x = 3

  B:数据类型 变量名;       int x

    变量名 = 初始化值;     x = 3

7:数据类型(掌握)

 (1)Java是一种强类型语言,针对每种数据都提供了对应的数据类型。

 (2)分类:

  A:基本数据类型:4类8种   :

   A:整数              占用字节数

   byte              1

   short             2

   int                 4

   long              8

  B:浮点数

   float              4

   double          8

  C:字符

   char               2

  D:布尔

   boolean         1(没有明确)

    注意:

   整数默认是int类型,浮点数默认是double。

   长整数要加L或者l。

   单精度的浮点数要加F或者f。


  B:引用数据类型:类,接口,数组。


8:数据类型转换

 (1)boolean类型不参与转换

 (2)默认转换

  A:从小到大

  B:byte,short,char -- int -- long -- float -- double

  C:byte,short,char之间不相互转换,直接转成int类型参与运算。


 (3)强制转换

  A:从大到小

  B:可能会有精度的损失,一般不建议这样使用。

  C:格式:  目标数据类型变量名 = (目标数据类型) (被转换的数据);


 (4)思考题和面试题:

  A:下面两种方式有区别吗?

 float f1 = 12.345f;                   赋值

 float f2 = (float)12.345;           强制转换


  B:下面的程序有问题吗,如果有,在哪里呢?

   byte b1 = 3;

   byte b2 = 4;

   byte b3 = b1 + b2;     //可能损失精度,java默认为int类型  。 

   byte b4 = 3 + 4;         // 没有问题   先相加然后再赋值给b4。


  C:下面的操作结果是什么呢?

   byte b = (byte)130;


解:   

  A:获取130这个数据的二进制。 

  00000000 00000000 00000000 10000010 

   这是130的原码,也是反码,还是补码。


  B:做截取操作,截成byte类型的了。

   10000010

   这个结果是补码。


  C:已知补码求原码

     符号位          数值位 

       补码: 1            0000010 

       反码: 1            0000001 (末尾-1   往高位借)

       原码: 1            1111110 

       结果:    -126


  D:字符参与运算

   是查找ASCII里面的值

   'a' 97

   'A' 65

   '0' 48         (要求记住这几个数的值)

   System.out.println('a');             a

   System.out.println('a' + 1);      98    (97+1))      字符和常数相加的时候被赋予特殊的值。


  E:字符串参与运算

   这里其实是字符串的连接

   System.out.println("hello"+'a'+1);        helloa1

   System.out.println('a'+1+"hello");        98hello

   System.out.println("5+5="+5+5);         5+5=55

   System.out.println(5+5+"=5+5");         10=5+5

 

你可能感兴趣的:(JAVA基础)