Java面向对象编程基础
面向对象(Object oriented programming,OOP)技术是一种强有力的软件开发方法,它採用数据抽象与信息隐藏技术,来使软件开发简单化,以达到代码重用的目的。
1、OOP的3个特性(封装、继承和多态性)
封装是类的基础。指把类的相关实现细节隐藏起来,在类中将数据和实现操作的代码集中起来放在对象的内部。调用这些类时仅仅需直接使用类预留的接口就能够了。
继承提供了子类自己主动拥有父类数据结构和方法的机制。它表示类之间的一种关系。
多态指使一个对象被看成还有一个对象的技术。即同样的操作或函数、过程可作用于多种类型的对象上,并获得不同的结果。
2、类、对象、方法
类:具有同样特性(数据元素)和行为(功能)的对象的抽象就是类。即对象的抽象是类。类的详细化就是对象,或者说类的实例就是对象。(类是一个概念模型,类是构造面向对象程序的基本单位)
对象:一切皆是对象。(对象是真实的实体)
方法:对象运行的操作称为类的方法。
3、构造方法与析构方法
构造方法是类的一种特殊方法。用来初始化类的一个新的对象。
JAVA中的每一个类都有一个默认的构造方法,它必须具有与类名同样的名称。并且没有返回类型。构造方法的默认返回类型就是对象的类型本身,并且构造方法不能被static/final/synchronized/abstract/native修饰。
析构方法与构造方法相反,当对象脱离其作用域时(比如对象所在的方法已调用完成),系统自己主动运行析构方法,析构方法往往用来做清理碎片的工作。
在JAVA的Object类中还提供一个protected类型的finalize()方法。因此不论什么java类都能够覆盖这种方法,在这种方法中进行释放对象所占有的相关资源的操作。
java中面向对象编程的笔记例如以下图:
最后给出演示样例代码:
/****************************************************** * "定义类"——怎样定义一个类*/ public class Oopbasic //声明一个类 { private String name; //编写类的属性 private int age; //编写类的属性 public void tell() { //编写类的方法(无返回參数) System.out.println(name+"今年"+age+"岁!"); } public int returnMax(int a,int b) { //编写类的方法(有返回參数) return Math.max(a, b); } public static void main(String [] args) { //主函数 Oopbasic fa=new Oopbasic();//创建一个实例,即对象 fa.name="Fred"; fa.age=10; fa.tell(); int x=12,y=15; int zuida = fa.returnMax(x, y); System.out.println("MAX="+zuida); } }