面向对象和封装
概述
- 封装、继承、多态
类与对象
- 类是对一类事物的描述,是抽象的
- 对象是一类事物的实例,是具体的
- 类是对象的模板,对象是类的实体
类的定义
- 属性(是什么):成员变量
- 行为(做什么):成员方法
public class Student {
String name;
int age;
public void study() {
}
}
对象
- 一个类不能直接使用,需要根据类创建一个对象,通过此使用
import 包名.类名
Student stu = new Student();
stu.study();
stu.name();
局部变量和成员变量
- 局部变量
- 定义在方法里
- 只有在方法里可以调用
- 没有默认值
- 随着方法进栈而诞生,随着方法出栈而消失
- 成员变量
- 定义在类里
- 类里面都可以调用
- 有默认值
- 随着对象创建而诞生,随着对象被垃圾回收机制回收而消失
关键字private
- private(私有),保护成员变量可以直接在类里使用,在类以外的范围里不可以直接访问
public class Person {
private int age;
public void setAge(int num){
age = num;
}
public int getAge(){
return age
}
}
关键字this
构造方法
- 构造方法的名称必须和类名完全一致
- 构造方法不要写返回值类型,不需要写void
- 构造方法不能return一个具体的返回值
- 如果没有写构造函数,编译器则会默认加一个没有方法体的构造函数
public class Student {
public Student(){
}
}