类的概述
Java是面向对象语言,面向对象的思想是将客观事物都作为实体,而对象通过实体抽象得到。
类是变量和方法的集合体。类可以嵌套定义。类是Java程序中基本的结构单位。所有的Java 语句出现在方法中,所有的方法都定义在类中。
数组是最简单的复合数据类型,是有序数据的集合。数组的元素可以是值(基本数据类型)、对象或其他数组。一个数组中的所有值都必须是相同的数据类型。
文本字符串是一种参考数据类型,它本身是由java.lang.String定义的对象。类String含有一系列对于字符串操作的方法。
1.类定义
Java 语言编写程序通过新的对象类型机制,就是允许自定义对象类型——类,它是程序的基本要素,由成员变量和成员方法组成。实例化一个类,就能得到一个对象。
类的成员变量可以是基本类型数据、数组或类的实例。
成员方法只在类中定义,用来处理该类数据。类提供外界访问其成员方法的权限,通常,类成员数据都是私有的,而方法是公有的,外界只可能访问成员方法。
类定义由类声明和类体组成。注意类名的第一个字母大写。类必须先定义后使用。
2.类声明
格式:
[修饰符]class类名[extends父类名][implements类实现的接口列表]…
其中用[]括起来的内容为可选项。关键字class是类定义的开始,类名应符合标识符命名规则,第一个字母大写并具有类功能特征。修饰符指明类的访问控制符和类型说明符。关键字ex-
tends指明该类是子类,它的父类名紧跟在后,子类与父类之间有继承关系。关键字implements指明该类实现的接口,后跟接口名列表。修饰符包括:
- (1)public访问控制符指明该类为公共类,可被其他类访问或引用其成员变量和成员方法。
- 注意,Java语言规定包含main()方法的主类必须是公共类。
- (2)默认(也称friendly)即没有访问控制符,表示该类只能被同一个包的类访问和引用,也不能用import语句引入。因为Java语言规定,在一个.java文件中只能有一个public类,这样,文件中其他类就只能都是默认访问控制符。
- (3)abstract抽象类,指明不能实例化的类。为更贴近人的思维和客观世界。定义它常常为改变它的子类而设置。
- (4)final最终类,指明该类不能有子类,例如InetAddress类。
3.类体
4.成员变量
成员变量声明格式:
修饰符【public,prolected,private,statie,final,transient,volatile]type变量名;其中type可以是java语言中任意数据类型。而修饰符的含义:
- (1)public 指明变量为公有。由于面向对象技术的封装要求,应尽量少用公共变量,而是通过公共方法类间接访问类的成员变量,从而提高程序的稳定性。
- (2)protected指明变量为保护访问。可被同一个包中其他类、不同包中该类的子类以及该类自己访问和引用。保证所有子类都可访问父类,不管这些子类被封装在哪里。
- (3)private指明变量为私有访问。只能被该类自己访问或调用,是对成员变量的最高级保护。
- (4)static指明变量为静态变量,否则为实例变量。静态变量不需要类的实例化就可被类直接调用。
- (5)final指明变量为常量。注意用大写字母。
- (6)transient 指明变量为暂时性变量,用于实现不同对象存档功能。
- (7)volatile指明多个线程共享的变量,保证各线程对该变量访问的一致性。
5.成员方法定义和调用
所谓成员方法,是指作为类的成员的方法。方法的定义由方法声明和方法体组成。方法定义的形式如下:
returnType methodName(paramlisl)[throws exceplions]
它表明了在一个方法调用前要知道的一些信息:
- (1)方法的名称。
- (2)参数的类型和名称。
- (3)方法返回值的类型。
- (4)方法的抛出的异常类型。
方法声明格式:
修饰符【public,protected,private,static,final,abstract,native,synchronized】
returnType methodName([paramlist])[throws exceptions]
{…}
其中修饰符public、protected、private、static、final与成员变量声明意义相同,都是定义方法访问权限。abstract 指明方法是否可以重写,native指明代码是由各种语言集成,synchronized指明多线程可并发共享访问。
提示:Java中的方法的参数传递是传值调用,而不是地址调用。方法不能改变参数值,但可以改变变量值,两个对象之间的参数字段,不能相互交换。
6.方法重载
【未完待续】