java基础学习资料
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1JAVA基础
1.1 类、数组、字符串操作
类:是变量和方法的集合体。类可以嵌套定义。类是java程序中基本的结构。所有的java 语句出现在方法中,所有的方法都定义在类中。
类{
方法{
Java语句}
}
数组:是最简单的复合数据类型,是有序数据的集合。数组的元素可以是值(基本数据类型)、对象或其他数组。一个数组中的所有值都必须是相同的数据类型。
文本字符串:是一种参考数据类型,它本身是由ng.String定义的对象。
1.2 类
实例化一个类,就能得到一个对象。
类定义由类声明和类体组成。
类声明:class+类名:
类体:成员变量+成员方法
1.2.1类声明
类声明格式:【修饰符】+class 类名+【extends 父类名】+ 【implements 类实现的接口列表】修饰符:指明类的访问控制符合类型说明符,包括:public、默认(friendly)、abstract、final 其中:
1、public:指明该类为公共类,可被其他类访问或引用其成员变量和成员方法。
Java语言规定包含main()的主类必须是公共类。
2、默认(也称friendly):没有访问控制符,表示该类只能被同一个包的类访问和引用,也不能用import语句引入。
3、abstract:抽象类,指明不能实例化的类
4、final:最终类,指明该类不能有子类
类名:第一个字母大写并具有类功能特征
extends:指明该类是子类,extends后面跟父类名,子类与父类之间有继承关系implements:指明该类实现的接口,后面是接口列表。
1.2.2类体
class 类名
{
成员变量声明
成员方法声明
}
成员变量和成员方法都可用public、protected、private、static、final 来设定访问权。
public:公用
protected:保护访问,可被同一个包中其他类、不同包中该类的子类以及该类自己访问和引用
private:私有访问,只能被该类自己访问或调用。
static:静态:静态变量(方法),否则为实例变量(方法)。不需要实例化可以被类直接调用。
final:常量:注意用大写字母。
1.2.2.1 成员变量
声明格式:
修饰符+type+变量名
修饰符:包括:public、protected、private、static、final 、transient、volatile:transient:指明变量为暂时性变量,用于实现不同对象存档功能
volatile:指明多个线程共享的变量,保证各线程对该变量访问的一致性。
1.2.2.2 成员方法
由方法声明和方法体组成
修饰符+方法返回值类型+方法名称+(参数列表)+【throws exception】
{
方法体
}
修饰符:public、protected、private、static、final 、abstract、native、synchronized
其中abstract:指明方法是否可以重写
native:指明代码是由各种语言集成
synchronized:指明多线程可并发共享访问。
方法体:是对方法的实现,包括局部变量声明、java合法指令
Java中的方法的参数传递是传值调用,而不是地址调用。方法不能改变参数值,但可以改变变量值,两个对象之间的参数字段,不能相互交换。
1.2.2.3 方法重载
方法的重载是指多个方法可以享用相同的名称,但参数的数量和类型必须不完全相同,即方法体有所不同,它实现了java编译时的多态性(即静态多态性)。也就是说,程序可以按参数决定调用对应方法,而此决定是由编译器来做的。
1.2.2.4 构造方法
构造方法是类中的一种特殊方法,是为对象初始化操作编写的方法,用它来定义对象的初始状态。Java语言中的每个类都有构造方法,它也是由方法名、参数和方法体组成。构造方法名必须与类名相同,它没有返回值,用户不能直接调用它,只能通过new自动调用。
构造方法也有成员、访问权限限制。在构造方法中必须使用成员变量,而且当参数与成员变量同名是,就只能用this关键字。
如果类中没有构造方法,java语言提供默认的构造方法。但只要类中提供了构造方法,默认构造方法就无效。
构造方法特点:
1.3 对象、接口、包
一个对象的生命周期可以分为3个阶段:生成、使用、清除
对象是一组相关变量和相关方法的封装体,是类的一个实例。对象的特征是对象的行为、状态和身份。
1.3.1对象的生存
对象生成包括声明、实例化、初始化3方面内容。
一般格式先定义一个对象变量,再用关键字new 生成一个对象,并为对象中的变量赋初始值
type objectName = new type(【参数】)
type objectName:声明时定义对象的类型,包括类和接口的复合类型。
new:new关键字是实例化一个对象,给对象分配内存,它调用对象的构造方法,返回该对象的引用。
type:指各种数据类型
1.3.2对象的使用
对象的使用原则:先定义后使用。
对象的使用包括访问类成员变量和方法的调用,对象作为类成员使用和作为方法参数(或返回值)使用。
访问格式:
对象名.调用的方法名或变量名
1.3.3对象的清除
对象的清除指释放对象所占用的内存。其清除途径:
1、依靠java的垃圾回收机制回收内存
2、调用System.gc(),请求垃圾回收
3、Java系统开始运行时,自动调用ng.Object.finalize()释放内存
4、在程序中调用重写的finalize()释放系统资源,其格式为:
super.finalize();
1.3.4接口
接口是一种只含有抽象方法或常量的一种特殊抽象类。
在java语言中,abstract修饰符定义的类称为抽象类,在其中的方法称为抽象方法。
abstract类必须被继承,abstract方法必须被重写,abstract类不能实例化。
abstract的格式:
abstract class abstractClass{
……..
}
接口是不包含成员变量和方法的抽象类,它只包含常量和方法的定义。
接口的主要功能是:
不管类的层次,可实现互不相关的类具有相同的行为。
通过接口说明多个类所需实现的方法。
通过接口可以了解对象的交互界面。无需了解对象所对应的类。
接口定义:由接口声明和接口体组成。
程序中的接口定义写成:
interface ActionListener //接口声明
{
void actionPerformed(ActionEvent)//方法定义