面向对象
面向过程:自己一个人独立开发,所有事情自己做
面向对象:组建团队开发,分工合作
类与对象
现实生活中
- 现实生活中,做一个纸质模板:目标是为了统计某一类事物的数据,录入学生信息模板,主要为了统计学生信息
理解:学生信息纸质模板,没填写任何数据,描述学生这一类事物!是一个类 - 现实生活中,复制纸质模板,得到独立的崭新的一份,填写具体的信息,该复制的模板填写了具体的信息,描述了一个具体的信息
理解:学生纸质模板,填写了具体的信息,描述的是一个具体的学生,是一个对象
虚拟世界中
- 需要个模板,一个类,用来描述一类事物
- 可以复制该模板,填写具体的信息,用来描述具体的一个事物
再次强化类和对象的概念
- 类:就是一个类事物:是不具体的:是类
- 对象:就是一个具体的学生,是具体的:是对象
类 :是指描述一类事物,或者看成是一个分类, 例如人类、车类、星球类,
对象 : 是指具体的个体(也叫实例-instance), 例如马云、王石、老郑、马云的迈巴赫、王石的切诺基、老谭的二八自行车、地球、火星等等。
对象的创建
创建对象
暂时 : new 类名();
对象字段赋值
以前学习的类型 :基本类型/引用类型,其中引用类型里面包含类,接口 数组,所有说 类是一种类型,这里的Student也一种类型,它是引用类型;
构造方法(Constructor)
什么是构造方法
- 构造方法的结构和普通方法类似,但是和普通方法完全不同两个代码块;
- 构造方法也是方法,意味着使用了构造方法,方法会执行,也能完成功能
- 构造方法就是一个代码块【就是一个结构 ,构造方法和 字段 方法一样都是一个类中的成员之一】
- 构造方法也该存在于类的结构体中
- 构造方法的名字和类名一致【包括大小写完全一致】
- 没有返回值类型
- 构造方法内部不需要返回任何的数据
- 其他的和普通方法类型 ,可以有修饰(public),可以有形参列表,可以有方法体
- new Student() 这个整体既是一个Student对象,又是调用的Student的无参数构造方法
构造方法特点
10. 类中构造方法特点:
a. 每一个类中都至少有一个构造方法;
b. 如果没有看到(显示的),那么存在一个隐式的无参数的构造方法;
c. 如果一个类中有显示的构造方法,那么隐式的就不存在了;
- 验证new Student()就是在调用构造方法?
a. 把隐式的构造方法显示写出来
b. 在这个构造方法里面随便写点打印代码
c. 执行new Student()
构造方法的作用
- 通过调用构造方法可以创建对象
- 在创建对象的同时给对象的字段赋值
构造方法注意事项 - 构造方法(Constructor)和普通方法(Method)是不一样的代码块,只是结构有些类似而已;
- 构造方法也是方法,方法执行,可以写功能代码,执行构造方法能完成一定的功能
- 普通方法可以名字和类名一致,但是不推荐这样,容易混淆;
- 构造方法的调用方式和普通方法不一样
- 把构造方法 Student 写成小写了 student;
注意 :
- 普通方法和构造方法是不同的两种结构
- 调用方法不一样
- 普通方法的调用 : 3种
类名.方法名+参数列表
对象.方法名
直接方法名
—》 不适用于构造方法 - 构造方法的调用 : 1(目前) new Xxx(…);