面向对线编程(上)
类和对象
一、封装、继承和多态(面向对象概述)
封装是面向对象编程的核心思想。采用封装的思想可以保证类内部的完整性,使用类的用户不能轻易地直接操作类的数据结构,只能执行类允许公开的数据。这样就避免了外部操作对内部数据的影响,提高了程序的可维护性。
继承性主要利用特定对象之间的共有属性。继承是指父类与子类的关系。需要注意的是,父类可以被多个子类继承,但一个子类只能继承一个父类。
多态就是将父类对象应用于子类的特征。
二、this关键字
this关键字用于表示本类当前的对象,当前对象不是某个new出来的实体对象,而是当前正在编辑的类。
例如下面Book类的setName()方法代码如下:
在Java语言中,规定使用this关键字来表示本类对象的引用,this关键字被隐式地用于引用对象的成员变量和方法。
在上述代码中,this.name指的就是Book类中的name成员变量,而this.name=name语句中第二个name则指的是形参name。所以,setName()方法就是实现将形参name的值赋给成员变量name。
三、类的主方法
主方法是类的入口点,它定义了程序从何处开始。主方法提供对程序流向的控制。其语法如下:
public static void main(String[] args){
… //方法体
}
四、对象
(一)对象的创建
java语言中创建对象需要用到new操作符调用构造方法创建对象。语法如下:
Test test=new Test();
Test test=new Test("a");
(二)对象的引用
java语言的引用语法如下:
类名 对象的引用变量
通常一个引用不一定需要有一个对象相关联。引用与对象相关联的语法如下:
People tom=new People(); //以People类为例
其中 People为类名,tom为引用,new People()为对象的实体。tom只是一段内存地址,用于标记对象实体在内存中的位置。并且tom可以“代理”new People(),例如:
new People().getClass();
等价于:
People tom=new People();
tom.getClass();
(三)对象的销毁
java语言拥有一套完整的垃圾回收机制,垃圾回收器会自动回收无用却占用内存的资源。
被java虚拟机视为“垃圾”的主要包括以下两种情况:
(1)对象引用超过其作用范围,这个对象将被视为垃圾。例如:
Example e= new Example(); //当对象e超过其作用范围时将会消亡。
(2)将对象赋值为null,例如:
{
Example e=new Example();
e=null;
}