一、Java语言概述
java语言特点:
1.简单易学 2.面向对象 3.平台无关性 4.分布式 5.可靠性 6.安全性 7.支持多线程 8.支持网络编程 9.编译与解释并存
面向对象与面向过程的区别:
面向过程:
优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的因素。缺点:没有面向对象易维护、易复用、易扩展。
面向对象:
优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护。缺点:性能比面向过程低。有三大特性:封装、继承、多态。
java技术主要包括三个方面:
1.Java SE(Java Platfrom Standard Edition):java平台标准版,可以用于开发客户端应用程序。
2.Java ME(Java Platfrom Micro Edition):java平台精简版,用于开发移动设备应用程序。
3.Java EE(Java Platfrom Enterprise Edition):java平台企业版,用于开发服务器端的应用程序。
java程序的运行过程:
先编译,后解释:
java源文件(app.java)通过编译器生成字节码文件(app.class)然后java的解释器便可解释运行。
二、Java语言基础
Java语言采用Unicode编码标准,Unicode(标准码),它为每个字符制订了一个唯一的数值,因此在任何的语言,平台,程序都可以放心的使用。
Java注释
定义:用于解释说明程序的文字
分类:
单行注释 格式: // 注释文字
多行注释 格式: /* 注释文字 */
文档注释 格式:/** 注释文字 */
作用:
在程序中,尤其是复杂的程序中,适当地加入注释可以增加程序的可读性,有利于程序的修改、调试和交流。注释的内容在程序编译的时候会被忽视,不会产生目标代码,注释的部分不会对程序的执行结果产生任何影响。
注意事项:多行和文档注释都不能嵌套使用。
基本数据类型:
1、整型
类 型 | 数据位 | 范 围 |
byte(字节型) | 8 | -128 ~ 127 |
short(短整型) | 16 | -32768 ~ 32767 |
int(整型) | 32 | -2147483684 ~ 2147483683 |
long(长整型) | 64 | -9223372063854775808 ~ 29223372063854775807 |
2、浮点型
类 型 | 数据位 | 范 围 |
float(单精度浮点) | 32 | 负数范围:-3.4028235E+38 ~ -1.4E-45 正数范围:1.4E-45 ~ 3.4028235E+38 |
double(双精度浮点) | 64 | 负数范围:-1.7976931348623157E+38 ~ -4.9E-324 正数范围:4.9E-324 ~ 1.7976931348623157E+38 |
3、布尔型
布尔型(boolean)也称为逻辑型,用来表示逻辑值。它只有true和false两个取值,不能转换为数字表示形式。
4、字符型
字符型(char)用来储存单个字符。字符型数据的声明只能表示单个字符,且必须用单引号将字符扩上。要想得到一个字符在Unicode字符集中的取值,必须强制转换成int类型。要取得Unicode中的相应字符,必须转换成char型。
常量
常量的声明形式与变量的声明形式基本一样,只需用关键字final标识,通常final写在最前面。例如:
final int a=5;
final float PI=3.14f;
变量
变量的声明格式:
类型 变量名[=初值][,变量名[=初值]]......
变量初始化
在声明变量的同时也可以对变量进行初始化,即赋初值。例如:int i=0;
数据类型转换
数值型不同类型数据转换:
1、自动类型转换
在程序中已经定义好的数值型的变量,若是想以另一种数值类型表示时,java语言会在下列条件成立时,自动进行数据类型转换:
- 转换前的数据类型与转换后的类型兼容。
- 转换后数据类型的表示范围比转换前的数据类型的表示范围大。
(低)byte-short-char-int-long-float-double(高)
2、强制类型转换
如果将较长的数据转换成较短的数据时,就要进行强制类型转换。格式如下:
(欲转换的数据类型) 变量名
字符串型数据与整型数据相互转换
1)字符串转换成数值型数据
转换的方法 | 功能说明 |
Btye.parseBtye(String s) | 将数字字符串转换成字节型数据 |
Short.parseShort(String s) | 将数字字符串转换成短整型数据 |
Integer.parseIntegerString s) | 将数字字符串转换成整型型数据 |
Long.parseLong(String s) | 将数字字符串转换成长整型数据 |
Float.parseFloat(String s) | 将数字字符串转换成浮点型数据 |
Double.parseDouble(String s) | 将数字字符串转换成双精度型数据 |
Boolean.parseBoolean(String s) | 将字符串转换成布尔型数据 |
2)数值型数据转换成字符串
在java语言中,字符串可用“+”来实现连接操作。所以若其中某个操作数不是字符串,该操作在连接之前会自动将其转换成其他字符串,因此可用加号来实现自动转换。
如:int a=123;//定义整型变量a
String b=""+a;//即将整型数据转换成了字符串
由键盘输入数据
数据输入方式一:
import java.io.*;
public class class_name //类名称
{
public static void main(String[] args)throws IOException{
String str ; //声明str为String类型的变量
BufferedReader buf; //声明buf为BufferedReader类的变量,该类在java.io类库中
buf=new BufferedReader(new InputStreamReader(System.in)); //创建buf对象
str=buf.readLine(); //用readLine()方法读入字符串存入str中,且需处理IOException异常
}
}
数据输入方式二:
为了简化操作,从Java SE 5版本开始在java.util类库中新增了一个专门用于输入操作的类Scanner,可以使用该类创建一个对象,然后利用该对象调用相应的方法,从键盘上读取该数据。
import java.util.*;
public class class_name //类名称
{
public static void main(String[] args){
Scanner reader=new Scanner(System.in); //创建Scanner对象用于读取System.in的输入
int a; //声明double类型变量
a=reader.nextInt(); //调用reader对象相应方法,读取键盘数据
}
}
小结:
1、Java语言的数据类型可分为基本数据类型和引用数据类型两种。
2、常量是在程序运行过程中保持值不变的量;变量是值在运行过程中可以改变的量。
3、Java语言的变量名称有明确的规定。要注意名称中不能有空格,且第一个字符不能是数字,还有不能是Java语言中的关键字。另外,名称区分大小写。
4、java语言中的运算符是有优先性和结合性的。