面向对象程序设计(OOP)是当今主流的程序设计语言,取代了结构化或过程式的编程技术。面向对象的程序是由对象组成的,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。事实上对一些规模较小的问题将其分解为过程的开发方式比较理想,但是面向对象更加适合解决规模较大的问题。
注意:面向过程和面向对象并不是一门语言,而是解决问题的方法,没有哪个好坏之分,都有各自的应用场景。
面向对象的程序设计一般分为三个步骤:
1.找对象;
2.创建对象;
3.使用对象。
一.类
类是用来对一个实体(对象)来进行描述的,主要描述该实体或对象具有哪些属性,哪些功能。那么应该如何定义类呢?具体语法如下:
//创建类
class ClassName{
field; //字段(属性)或成员变量
method; //行为或者成员方法
}
其中class为定义类的关键字,ClassName为类的名字(类名注意使用大驼峰命名方式),{}中为类的主体。类中包含的内容为类的成员,属性主要是用来描述类的,称之为类的成员属性或者类的成员变量。方法主要说明类具有哪些功能,称为类的成员方法。
下面举一个例子,我们定义一个狗类:
class Dog {
public String name;
public String colour;
public int age;
public void barks(){
System.out.println(name+":汪汪汪");
}
public void eat(){
System.out.println(name+"吃骨头!");
}
}
这个类具有名字,颜色,年龄属性,具有吃,叫两种方法(功能)。类创建好之后应该如何使用呢?答案是用类类型创建对象,这个过程称为类的实例化,而在java中采用new关键字配合类名来实例化对象。
class Dog {
public String name;
public String colour;
public int age;
public void barks(){
System.out.println(name+":汪汪汪");
}
public void eat(){
System.out.println(name+"吃骨头!");
}
public static void main(String[] args) {
Dog dog = new Dog();
dog.age = 8;
dog.name = "旺财";
dog.colour = "黄";
dog.eat();
dog.barks();
}
}
格式为:类名 对象名 = new 类名();而通过对象名.属性来调用类的实例字段或者通过对象名.方法名来调用功能。
注意:1.new关键字用于创建一个对象的实例;
2.使用 . 来访问对象中的属性和方法;
3.同一个类可以创建多个对象。