天天看点

面向对象、类与对象的定义

本章目标

了解面向对象的基本概念

了解面向对象的三个主要特征

掌握类与对象的关系

掌握类的定义

掌握对象的声明及使用

面向过程与面向对象

程序的发展经历了两个主要阶段:面向过程、面向对象

对于面向对象与面向过程可以用一个例子解释,如一个木匠要做一个盒子,那么做这个盒子的出发点会有两种方式:

——面向对象:先想好要做的盒子,之后再去找相应的工具去做。

——面向过程:不去想要做什么样的盒子,随需取用工具。

面向对象的三大特征

封装(Encapsulation)

——对外部不可见

继承(Inheritance)

——扩展类的功能

多态(Polymorphism)

——方法的重载

——对象的多态性

类与对象

类是对某一类事物的描述,是抽象的、概念上的定义;对象是实际存在的该类事物的每个个体,因而也称实例(instance)

面向对象、类与对象的定义

换种方式解释:类与对象的关系

类就相当于是一个模板,依照此模板产生产品

面向对象、类与对象的定义

类的定义

面向对象、类与对象的定义

定义Person类

class Person {

  String name;

  int age;

  public void tell() {

  System.out.println("姓名:" + name + ",年龄:" + age);

  }

}

Person类图

所示的图形分为三个层次

——第一层表示类的名称,类的名称与之前一样要求开头首字母大写;

——第二层表示属性的定义,按照“访问权限 属性名称:属性类型”的格式定义;

——第三层表示类中方法的定义,按照“访问权限 方法名称():方法返回值”的格式定义

面向对象、类与对象的定义

对象的创建及使用

面向对象、类与对象的定义

类名 对象名称 =  null ;  // 声明对象

对象名称 = new 类名() ;  // 实例化对象

类名 对象名称 = new 类名() ;

class Person{
	String name;//声明姓名属性
	int age;//声明年龄属性
	public void tell(){//取得信息的方法
		System.out.println("姓名:"+name+",  年龄:"+age);
	}
}
public class ClassDemo02 {
	public static void main(String[] args) {
		Person per = new Person();//创建并实例化对象
	}
}
           

访问类中的属性和方法

访问属性:对象名称.属性名

访问方法:对象名称.方法名()

class Person{
	String name;//声明姓名属性
	int age;//声明年龄属性
	public void tell(){//取得信息的方法
		System.out.println("姓名:"+name+",  年龄:"+age);
	}
}
public class ClassDemo03 {
	public static void main(String[] args) {
		Person per = null;//声明对象
		per = new Person();//实例化对象
		per.name = "张三";//为 name 属性赋值
		per.age = 30;//为 age 属性赋值
		per.tell();//调用类中的方法
	}
/*结果:
 * 姓名:张三,  年龄:30
 * */
}