文章目录
一、Java语言的面向对象特性
Java语言是一门面向对象的语言,和其他面向对象语言一样,Java面向对象语言有以下三个特征:
- 封装:在面向对象语言中,我们操作的是一个又一个对象。这些对象的数据与操作数据的方法会被封装到特定的类里面,我们在使用的时候不需要关心该对象的某些方法是如何实现的,只需要调用类提供的接口即可使用这些方法。这就是封装的含义。
- 继承:当一个类是另一个类的特例时,我们可以让这个特例的类去继承另一个类,这样,这个特例的类被称作子类,而继承的类被称作父类。这样子类不仅能有父类的特性,还可以有自己的额外扩展,这就是继承的含义。
- 多态:多态的含义可以表达为“对外提供一个接口,内部可以有多种实现”。
封装、继承和多态在下面都会详细介绍到!
二、类的定义
1.类定义的方式
Java中类的定义使用到的关键字是 class ,类体中主要定义的是:成员变量、成员方法、构造方法和初始化块。下面以日期类示例,演示一下类的定义方法:
//类名为Date,访问限定符为public
public class Date {
/**
* 分别定义成员变量year、month、day
* 且均设置为私有变量,即只能在类内部访问,外部无法访问
*/
private int year;
private int month;
private int day;
//带参构造方法,对成员变量进行初始化
public Date(int year,int month,int day)
{
this.year=year;
this.month=month;
this.day=day;
}
//打印日期
public void printDate()
{
System.out.println(year+":"+month+":"+day);
}
}
Java语言类的成员变量声明时,可以使用如下修饰符的组合:
- 访问权限符:public(公有)、private(私有)、protected(保护)
- 常量声明:final
- 静态声明:static
另外,需要说明的是,成员变量是定义在类中的,作用范围是整一个类;局部变量是定义的在方法中的,作用范围从该变量的说明开始到包含该变量的块体结束为止,不允许同名局部变量的作用范围重叠(如果局部变量与成员变量同名时,在方法中局部变量优先)。
例如:下述代码中x的输出结果就应该是1而不是0
2.Java方法参数传递的方式
Java方法