一、面向对象
1、什么叫面向过程? 什么面向对象?
面向过程和面向对象都是一种编程的思想
(1)面向过程:强调的功能和行为,以函数为最小单位,考虑怎么做。
比如:把大象装进冰箱
①打开冰箱
②把大象装进冰箱
③关上冰箱门
(2)面向对象:将功能封装进了对象,强调具备该功能的对象,以类/对象为最小单位,考虑谁来做。
比如:把大象装进冰箱
人{
打开(冰箱){
冰箱.开门();
}
操作(大象){
大象.进入();
}
关闭(冰箱){
冰箱.关门();
}
}
冰箱{
开门(){}
关门(){}
}
大象{
进入(冰箱){}
}
2、面向对象学习的主线:
(1)java类及类的成员
(2)面向对象的三大特征(封装性,继承性,多态性)抽象性【有的人会划分为四大特性,如果划分为四大特性的话,就加上抽象性(一般划分为三大特性)】
(3)关键字(class,final,interface,abstract,static,this,super等)
面向对象的三大特征:封装、继承、多态
二、类和对象
1、什么是对象?什么是类?
对象:
- 对象指具体的事物,具有静态的特征和动态的行为或用途。
比如:以一个人为例,这个人就相当于是一个对象,拥有特征和行为。
特征:身高、体重、性别、年龄…
行为:说话、吃饭、睡觉…
在Java语言中,在对对象进行描述时,其静态的特征称为属性,动态的行为或用途称为方法。
类:
- 从多个对象当中抽象出来的共同的特征,可以把这种特性称之为类。类是具有相同属性和行为的一组对象的集合,类也有属性和行为。类相当于是一个模板,是一个抽象的概念。
比如:说到电脑,那么我们脑海中会有一个电脑的轮廓,这个就相当于一个模板,这个模板称为类。以后可以去定义一个电脑类,然后这个类里面包括电脑的属性(可以理解为电脑的外观)和方法(可以理解为电脑的功能)。
三、类的定义和创建对象
1、类的定义
(1)Java中类声明的格式如下:
[类修饰符] class 类名 [extends 父类名称] [implements 接口名称列表]
{
属性定义及初始化;
方法定义及方法体;
}
(2)成员变量
成员变量就是类的属性,定义在类体当中,方法体之外。
定义方式:
[访问修饰符] 变量数据类型 变量名;
(3)构造方法
构造方法作用:
1、创建对象
2、创建对象的同时,初始化实例变量(成员变量)的内存空间。
如果你没有定义任何构造方法,那么程序会自动生成一个无参数的构造方法,那么当你创建对象时只能调用无参的构造方法。【构造方法就是与类同名的那个方法,它的作用是可以用来初始化】
定义方式:
[访问修饰符] 类名(形参列表){
…
}
(4)成员方法
成员方法是通过“引用.”的方式来调用的。
定义方式:
[访问修饰符] 返回值类型 方法名(参数列表) [throws exception]
{
…
}
2、创建对象
语法:
类名 引用 = new 构造方法;
3、实例演示
定义一个为Person的类
public class Person {
String name;
int age;
//无参构造
public Person() {
}
//有参构造
public Person(String name,int age) {
this.name = name;
this.age = age;
}
//成员方法
public void eat() {
System.out.println("吃饭");
}
}
创建一个Person对象
public class PersonTest {
public static void main(String[] args) {
Person p1 = new Person();
p1.name = "张三";
System.out.println(p1.name);
p1.age = 20;
System.out.println(p1.age);
p1.eat();
}
}
输出:
张三
20
吃饭