第02章 表达式和数据类型
第02章 表达式和数据类型
一、Java主类结构
1、类的概述
1)Java语言是面向对象的程序设计语言。
2)基本组成单元是类,类体中有属性(变量)和方法(函数)两部分。
3)类是对现实生活中一类具有共同特征的事物的抽象。
4)如Person就是一个类,则具体的某个人“张三”就是“人类”这个类的对象,而“姓名、身高、体重”等信息就是对象的属性,人的动作如“吃饭、穿衣”等就是对象的方法。总之,类就是有相同特征的事物的集合,对象就是类的一个具体实例。
5)每个应用程序都必须包含一个main()方法;
6)含有main()方法的类成为主类。
2、包声明
1)包命名规则
(1)规则:一律小写
①公司域名的逆序写+项目的名字+项目模块的名字
(2)例子:www.1000phone.com
①com.kkk.test.testadd
②不允许出现数字,所以把1000改了
3、声明成员变量和局部变量
1)变量介绍
(1)属性即为变量;方法即为函数
(2)变量声明
①数据类型 变量名字;
②声明变量同时可赋值;
③变量名不能重复;
(3)先声明变量,再赋值,后使用。
2)成员变量(全局变量):类之内方法之外
(1)通常将类的属性称之为类的成员变量(全局变量);
(2)使用范围:从声明开始,一直到程序结束都可使用。
3)局部变量
(1)通常将方法中的属性称为局部变量;
(2)使用范围:仅限于当前方法内部使用;
(3)局部变量可与成员变量名字相同,此时成员变量被隐藏。
4、编写主方法
1)public,static,void分别是main()方法的权限修饰符,静态修饰符和返回值修饰符;
2)必须声明为public static void
二、基本数据类型
1、概述
1)Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间;
2、基本数据类型
1)数值型
(1)整型(byte,short,int,long)
(2)浮点型(float,double)
2)字符型(char)
3)布尔型(boolean)
3、引用数据类型
1)类(class)
2)接口(interface)
3)数组([])
4、String类型
1)既是字符串类型,又是一个类类型;
5、转义字符
1)一种特殊的字符变量,它以反斜线“\”开头,后面跟一个或多个字符;
2)转义字符具有特定的含义,不同于字符原有的意义,故称“转义”;
3)例子
(1)\’单引号字符
(2)\反斜杠字符
(3)\t垂直制表符,将光标移到下一个制表符的位置(相等于Tab键)
(4)\r回车
(5)\n换行
6、布尔类型
1)只有true和false两个值;
2)不能与整数类型进行转换;
3)通常被用在流程控制中作为判断条件。
4)声明
(1)boolean b1,b2;
(2)boolean b=true;
(3)boolean=4>3;
7、Math类
1)在lang包下的类,它里面定义了很多方法实现常用的数学运算;
2)Math类中的方法都是静态的;
3)Math类中的方法
(1)abs():求绝对值
(2)sqrt():求平方根
(3)pow():求乘方
(4)random():获得0-1之间的随机数
4)在Test.java中测试使用Math类中的方法
(1)Math.abs(-5)
(2)Math.sqrt(9)
(3)Math.pow(2,3)
(4)Math.random()*100:获得0-100之间的随机数
5)对于静态(static)的方法和属性,可以直接来使用,使用的过程:
(1)调用方法:类名.方法名();
(2)调用属性:类名.属性;
(3).即为调用的意思
三、变量与常量
1、标识符和关键字
1)用来标识类名、变量名、方法名、数组名、文件名的有序字符序列;
2)字母、数字、下划线_、美元符号$,第一个字符不能是数字
3)关键字就是Java语言中已经被赋予特定的意义的一些单词,不可把其作为标识符使用。
2、变量
1)变量概述
(1)内存中一个存储区域;
(2)该区域有自己的名称(变量名)和类型(数据类型);
(3)该区域内的数据可以在同一类型范围内改变。
2)变量定义格式
(1)三步骤:声明、赋值、使用;
(2)一个变量只能存储一个值(同一种类型)
3、常量
1)不可修改的量,也叫“final变量”,程序执行过程中常量值不可修改,整个程序中只能被赋值一次;
2)字面值常量
(1)整数常量:所有整数
(2)小数常量:所有小数
(3)字符常量:用单引号括起来的内容
(4)布尔常量:较为特殊,只有true和false;
(5)字符串常量:用双引号括起来的内容
(6)空常量:null(数组部分讲解,代表“什么都没有”)
3)自定义常量
4)声明常量
(1)final 数据类型 常量名称=值
(2)常量名通常用大写字母;
(3)当定义final变量属于成员变量时,必须在定义时就设定它的初值。
(4)例子
①final duble PI=3.1415926D;
②final Boolean BOOL=true;
四、类型转换
1、类型转换概述
1)在Java中,不同类型之间在一定条件下可以相互转换;
2、类型转换分类
1)自动类型转换(隐式转换)
(1)需要满足的条件
①小类型转大类型,小范围转大范围;
②如:int型可以自动转换为long型,但double型不能自动转换为float类型。
(2)转换规律
①byte(1字节)->short(2)字节->int(4字节)->long(8字节)->float->double
②char(2字节)->int->long->float(4字节)->double(8字节)
③char在一定条件下可以和byte类型相互转换。(ASCII)
2)强制类型转换(显式转换)
(1)格式:数据类型1 变量的名字=(数据类型1)变量的名字
(2)缺点:会造成精度的损失;
五、运算符
1、算术运算符
1)int a=3;System.out.println(”a=”+a); 则输出:a=3
2)i自增自减放在前后对i本身没有影响,但对要被赋值的变量有影响;
3)如果i自增自减作为逻辑条件判断,则放前放后有影响,因为相当于做了赋值给该位置的操作。
2、赋值运算符
3、比较运算符
4、逻辑运算符
1)逻辑运算符用于连接布尔型表达式;
2)表达式:用运算符连接的式子;
3)布尔表达式就是运算结果为boolean类型的表达式。
4)&和&&的区别
(1)&时,左边无论真假,右边都进行运算;
(2)&&时,如果左边为假,右边直接不再参与运算。(直接就为false了)
5)|和||的区别
(1)|时,左边无论真假,右边都进行运算;
(2)|时,如果左边为真,右边直接不参与运算。(直接就为true了)
5、三目运算符
1)布尔表达式1?表达式2:表达式3;
2)通常,表达式1是布尔表达式,用于描述条件表达式中的条件,表达式2和3可以是常量、变量或表达式。
六、表达式
1、表达式概述
1)表达式是指由常量、变量或操作数与运算符所组合而成的语句。