1.抽象
定义:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面,抽象只关注对象的哪些属性和行为,并不关注这此行为的细节是什么
2.封装
定义:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口.面向对象的本质就是将现实世界描绘成一系列完全自治,封闭的对象,可以说,封装就是隐藏一切可隐藏的东西,只向外界提供最简单的编程接口。封装给对象提供了隐藏内部特性和行为的能力,对象提供一些能这被其它对象访问的方法来改变它内部的数据。
2.1.提供构造方法(有了构造方法才能通过new去构建一个对象 1.构造方法必须和类名称一样2.构造方法不能有返回值)
空参构造系统默认存在,但是当你手动加入了有参构造,默认的空参构造将不再存在
//空参构造
public Student(){ };
//有参构造
Student(String name){
this.name = name;
System.out.println("初始化成功...");
}
//有参构造
Student(String name,int age,String cardNo){
this.name = name;
this.age = age;
this.cardNo = cardNo;
System.out.println("初始化成功...");
***********************
//有了构造,在主方法中便可以创造对象
Student s1 = new Student(); 空参构造
Student s2 = new Student("王五"); //有参构造
Student s3 = new Student("赵六", 22, "13012412"); //有参构造
}
许许多多的构造方法形成了多态(重载),这个下边会讲到。
2.2 静态块(做的类的初始化的工作,执行在new之前)
静态块用于放创建对象前要做的一系列事情,比如说一个学生,首先要被孕育,然后出生…等等
static{
yunyu();
born();
}
static void yunyu(){
System.out.println(“孕育”);
}
static void born(){
System.out.println(“出生”);
}
2.3 控制访问
3.继承(关键字:extends)
目的:对父类和方法的复用
继承是从已有类得到继承信息创建新类的过程,继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的重要手段.子类继承父类属性(静态特征)和方法(动态特征),继承必须遵循封装当中的控制访问
举个例子
动物分为哺乳动物和爬行动物,哺乳动物又包括人类,所以说,哺乳动物,爬行动物都与动物存在父子关系,而哺乳动物与人类也存在父子关系,父亲有的行为和属性,儿子理应也有
4.多态
多态性是指允许相同或不同子类型的对象对同一消息作出不同响应
4.1 重载:同一个动作作用在同一个对象上拥有不同的解释 overload
重载又称静态多态,编译时多态
4.2 重写:同一个动作作用在不同的对象上拥有不同的解释 override
重写又称动态多态,运行时多态