Java复习总结

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Java面向对象程序设计Java程序分为两大类型:◦JavaApplication(Java应用程序)◦JavaApplet(应用在小应用程序)。◦Java应用程序主要以main()方法作为程序入口,由Java解释器加载执行。◦JavaApplet则是内嵌在HTML文件中,必须搭配浏览器来运行,它没有程序入口。Java编译器:javac源文件:文件名.java由java解释器执行由浏览器执行编译生成Java应用程序JavaApplet程序2.Java程序的开发过程图一、标识符和关键字二、Java语言的基本数据类型三、从命令行输入、输出数据四、数组1、标识符:①定义:用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列。②标识符的命名规则:Java语言中,标识符是以字母,下划线(_),美元符($)开始的一个字符序列,后面可以跟字母,下划线,美元符,数字。例如:identifier,userName,User_Name,_sys_val,$change,int_long为合法的标识符;而2mailroom#,class,extends为非法的标识符。Java语言的数据类型有简单类型和复合类型:①简单数据类型包括:整数类型(Integer):byte,short,int,long浮点类型(Floating):float,double字符类型(Textual):char布尔类型(Logical):boolean②复合数据类型包括:classinterface数组常量:十进制:1233000123L八进制(以0开头):077023十六进制(以0x开头):0xa3fbyte:8位short:16位int:32位long:64位Java使用Unicode定义的国际化的字符集能表示人类语言的所有字符集,例如拉丁文、希腊语、阿拉伯语等。字符型常量:’A’‘?’‘!’‘\t’‘好’定义字符型变量:charx=‘a’,y=‘\n’,c=97;浮点类型分为float型、double型。float型:•常量(以f或F结束):123.45f2e40fdouble型•常量(以d或D结束,但允许省略):0.05,23.45D,1e20floatx=3.2;错误floatx=3.2f;正确doublex=3.2;正确doublex=3.2d;正确floatx=(float)3.2;正确简答:float类型和double类型的常量有什么区别?boolean型常量:true、false定义布尔型变量:booleanx,ok=true,y=false;低byteshortcharintlongfloatdouble高说明:由低级别向高级别转换时,系统自动完成。例1:floatx=100;输出x的值为100.0例2:intx=50;floaty;y=x;输出y的值是50.0低byteshortcharintlongfloatdouble高说明:变量由高级别向低级别转换时,必须用强制类型转换。例:intx=(int)34.89;longy=(long)56.98F;intz=(int)1999L;注意:如果将一个double值赋给float类型变量,floata=30.8;将会出现语法错误。需要进行强制类型转换:floata=(float)30.8;从命令行得到用户输入的数据引入包importjava.util.Scanner;使用Scanner类创建一个对象:Scannerreader=newScanner(System.in);然后使用reader对象调用下列方法,读取用户在命令行输入的数据。按回车确认。reader.nextLine();//读取一行文本,可带空格reader.nextInt();//读取一个int数值reader.nextDouble();//读取一个double数值数据输出System.out.println(“hello”);//输出完换行System.out.print(“hello”);//输出完不换行System.out.printf(“格式控制部分”,表达式1,表达式2,……表达式n);◦格式符号:%d:输出int型数据%c或%C:输出char型数据%f:输出浮点型数据%s或%S:输出字符串数据%o:输出八进制数%x或%X:输出十六进制数%e或%E:浮点数以科学计数法输出◦输出数据时也可以控制数据在命令行的位置:%md:输出的int型数据占m列%m.nf:输出的float数据整数部分占m列,小数部分占n列。如:System.out.printf(%d,%f,12,37.2f);数组:相同类型数据元素按顺序组成的一种复合数据类型。通过数组名加数组下标来使用数组元素。1.声明数组:声明数组包括数组的名字、数组元素的数据类型,无需指定数组元素个数。声明一维数组的两种格式:数组元素类型数组名字[]数组元素类型[]数组名字如:int[]a;inta[];为数组分配内存空间格式如下:数组名字=new数组元素的类型[数组元素的个数];如:a=newint[4];数组元素的引用:数组下标从0开始!a[0]=1;a[1]=3;a[2]=4;a[3]=5;提问:假设有如下数组:float[]b=newfloat[6];则数组的最后一个元素是?通过数组名.length,可以得到数组的长度。例:double[]a=newdouble[10];intn=a.length;一、运算符与表达式二、语句概述三、控制语句四、循环语句五、break和continue语句六、数组与for语句七、枚举类型与for、switch语句1.算术运算符与算术表达式2.自增自减运算符3.算术混合运算的精度4.关系运算符与关系表达式5.逻辑运算符与逻辑表达式6.赋值运算符与赋值表达式7.位运算符8.instanceof运算符①加减运算符(+、-)②乘除和求余运算符(*、/、%)③自增自减运算符(++、--)作用:使变量的值增1或减1例:i++++ii----i计算题:已知x=5,求y=4*(x++)与y=4*(++x)的值分别是多少?按精度由“低”到“高”排列顺序如下:byteshortcharintlongfloatdoubleJava在计算算术表达式的值时,计算精度规则如下:◦如果表达式中有双精度浮点数,则按双精度运算。◦如果表达式中最高精度是单精度浮点数,则按单精度进行运算。◦如果表达式中最高精度是long型整数,则按long精度进行运算。◦如果表达式中最高精度是int型整数,则按int精度进行运算。运算符优先级用法含义结合方向6op1op2大于左到右6op1op2小于左到右=6op1=op2大于等于左到右=6op1=op2小于等于左到右==7op1==op2等于左到右!=7op1!=op2不等于左到右运算符优先级用法含义结合方向&&11op1&&op2逻辑与左到右||12op1||op2逻辑或左到右!2!op逻辑非右到左①例:x=8,求x5&&((x=10)2)表达式的值,以及x的值。答:表达式结果为false,x=8②例:x=8,求x5||((x=10)2)表达式的值,以及x的值。答:表达式结果为true,x=8③已知x=3,表达式x5&&((x=1)3)的值为,x的值为。④已知x=7,表达式x5&&((x=1)3)的值为,x的值为。赋值运算符:◦变量=表达式◦双目运算符◦优先级别:14级◦结合方向:右到左注意:与关系运算符“==”相区别位运算符:位运算符用来对二进制位进行操作◦“按位与”运算符&◦“按位或“运算符|◦“按位非”运算符~◦“按位异或”运算符^◦左移运算符,左边超出的话截掉,右边补0◦右移运算符,有符号。右边超出截掉,左边补上符号位◦无符号右移运算符,无符号,左边补01.方法调用语句2.表达式语句3.复合语句4.控制语句1.条件控制语句if语句if语句的一般形式:if(表达式){//若干语句}if-else语句的一般形式:if(表达式){//若干语句}else{//若干语句}if(表达式1){//语句}elseif(表达式2){//语句}……elseif(表达式n){//语句}switch(表达式){case常量1:若干语句break;case常量2:若干语句break;……case常量n:若干语句break;default:若干语句}①for循环语句for语句是java程序设计中最有用的循环语句之一,for语句的格式如下:for(表达式1;表达式2;表达式3){若干语句}②while循环一般格式:while(表达式){若干语句}③do-while循环一般格式:do{若干语句}while(表达式);break和continue语句是指用关键break或continue加上分号构成的语句,例如:break;在循环体中可以使用break语句和continue语句。在一个循环中,比如循环50次的循环语句中,如果在某次循环中执行了break语句,那么整个循环语句就结束。如果在某次循环中执行了continue语句,那么本次循环就结束,即不再执行本次循环中循环体中continue语句后面的语句,而转入进行下一次循环。从键盘上输入一个整数赋值给n,求n!4.1编程语言的几个发展阶段4.2类4.3对象4.4参数4.5static关键字4.6this关键字4.7包4.8访问权限4.9基本类型的类包装4.10反编译和文档生成器4.11jar文件4.12小结Java和其他面向对象的编程语言一样,也支持面向对象编程的三个特性:封装性、继承、多态。1.封装性:Java通过类将数据和数据的操作封装在一起。2.继承:子类可以继承父类的属性和功能,即继承父类所具有的数据和数据上的操作,同时又可以增添子类独有的数据和数据上的操作。3.多态:一个名字,多个方法。◦多态的实现有两种方式:方法的重写(override)方法的重载(overload)。重写:指父子类之间有同名的方法,子类重定义从父类继承来的同名方法,如果子类中定义方法所用的名字、返回类型、参数表与父类中方法完全一样,我们说子类重写了父类中的方法,即子类隐藏了父类中同名方法。重载:在同一类中如果有同名的方法,一般称作重载。重载的各方法中不允许有完全相同的参数个数及参数类型。简答:什么是方法的重写?简答:什么是方法的重载?类是组成Java程序的基本要素。类体包括成员变量的定义、方法的定义。成员变量包括类变量、实例变量。方法包括类方法、实例方法。使用被隐藏的成员变量:如果成员变量被隐藏,若想在该方法内使用成员变量,必须使用关键字this。publicclassTest{Stringname;intage;booleanflag=false;staticintcount;finaldoublePI=3.14159;}[访问性修饰符][非访问性修饰符]返回值方法名(){//方法体}“返回值”的取值,可以是:1、基本数据类型。2、void(即无返回值)。3、某个类的类名(即返回此类的一个对象)。在Java中,除构造方法外,其它所有方法那必须在方法名前加上“返回值”的描述,否则编译错误。关于return:1、若“返回值”不为void,则方法中必须含有return语句。2、return语句后不可以有其它语句(return在if语句中的情况除外),否则编译错误,因为return后的语句将永远不会被执行。3、return可以返回比“返回值”部分定义的取值范围更小的数据类型。但反之,将出现编译错误。4、注意:类继承的情况下,当返回一个对象时,对象类型不能为父类的类型,因为父类的取值范围小于子类。publicclassTest{publicfinalstaticfloatmax(floata,floatb){returnab?a:b;}public

1 / 82
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功