类与对象
2017-11-13
什么是对象?
当然是媳妇儿咯!(开玩笑 ^^,开玩笑 ^^,开玩笑 ^_^)。
在自然中,具体的某个东西就是对象。类比: Java中对象就是类具体的实例。
对象的属性:
即对静态的特点。比如人的身高。
对象的方法:
即对象动态的特点(或者是对象能实现的功能)。如:人吃饭,走路。
对象用途:
1、用于封装属于同一个对象的数据。
2、用于调用类里的资源。
什么是类?
Java中: 类就是具有相同特征的对象的集合。比如 String类,其对象具有相同特点(都是字符组成的)。
如何定义类
class 关键字
// 访问修饰符 class 类名 {}
public class Recursive {
}
如何定义属性和方法
在用class 声明的类中定义
public class Recursive {
/*
* 定义属性
* 访问权限 属性类型 属性1 ;
* 访问权限 属性类型 属性2 ;
*/
private int age ;
private String name ;
/*
* 定义方法
*
* 访问权限 修饰符 返回值类型 方法名 (参数列表) {
* 方法体
* }
*/
public void setName (String name) {
this.name = name ;
}
}
如何创建和使用对象
构造方法:
定义: 用于构造本类对象的方法,
特点:
1、 没有返回值类型(或者说返回值类型就是类)
2、方法名与类同名。
3、在没有写构造方法时,系统默认提供空参构造。
// 空参构造
public Recursive() {
}
public Recursive(int age) {
this.age = age;
}
public Recursive(int age, String name) {
this.age = age;
this.name = name;
}
创建对象
new 关键字创建对象
// 类名 对象名 = new 构造方法 ( 参数(可不用) ) ;
Recursive rec = new Recursive();
使用对象
1、实例化对象
2、用对象名可直接调用类里的非静态资源
// 类名 对象变量 = new 构造方法 ( 参数(可不用) ) ;
Recursive rec = new Recursive(23 , null);
// 调用设置姓名的方法
rec.setName("递归");
// 调用获得年龄的方法
System.out.println(rec.getAge());
面对过程与面对对象
例:
封装“张三,23 。 李四 ,25 。”两人的信息
面对过程
// 面对过程
String name = "张三";
int age = 23 ;
String name2 = "李四";
int age2 = 25 ;
// 面对对象
Person p = new Person("张三" , 23);
Person p2 = new Person("李四" , 25);
面对对象的优点:
1、 与人的思维一致,把人解决问的思维过程转变为程序能理解的过程。
2、程序维护性和安全性更好。
3、封装实现了代码的模块化管理,且可以设置访问权限,提高了代码安全性
4、一个类可以实例化多个对象,增加了代码复用性。