一、 面向对象具有三个基本特征:封装(Encapsulation)、继承(Inheritance)、多态(Polymorphism)。
1. 封装
隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别。
//将成员变量和方封装成一个类,对外有限制的提供类的使用
public class Car{
int a;
String b;//成员变量
private void get(){//成员方法
....代码略
}
}
2. 继承
继承可以使得子类具有父类的属性和方法或者重新定义、追加属性和方法等。
//继承Car的方法和变量,并且可以覆盖父类的方法或添加新的方法
public class BMW extends Car{
int c;
String d;
private void get(){//重新定义get方法
}
private void set(){//新的set方法
}
}
3. 多态
子类对象可以直接赋值给父类变量,即同类对象在执行同一方法时可以表现出不同的特征。
public class Audi extends Car{
int c;
String d;
private void get(){//重新定义get方法
}
private void set(){//新的set方法
}
private void print(){
}
//主方法,程序运行的入口
public static void main(String[] args){
Car a=new BMW();
Car b=new Audi();
//同一类型的a,b的get的方法可能不同,从而实现多态
a.get();
b.get();
}
}