一、面向对象思想
1、概念
- 面向就是“看重”的意思。
- 面向对象就是“”偷懒”。
- 面向过程:当需要实现一个功能的时候,每一个具体的步骤都要亲力亲为,详细处理每一个细节(如打印数组,“[、,、]”这些符号都要自己实现)。
- 面向对象:当需要实现一个功能的时候,不关心具体步骤,而是找一个已经具有该功能的人来帮我干活(直接用toString方法)。
2、举例
- 面向过程洗衣服:每一步都要自己做。(强调步骤)
- 面向对象洗衣服:找一个洗衣机来操控它。(强调对象,洗衣机就是对象)
3、特点
- 面向对象思想是一种更符合我们思考习惯的思想,它可以将复杂的事情简单化,并将我们从执行者变成了指挥者。
- 面向对象的语言中,包含三大基本特征:封装、继承、多态。
二、类和对象
1、概念
- 类:是一组相关属性和行为的集合。可以看成是一类事物的属性特征和行为特征来描述该类事物。(如猫是一个类;属性有:名字、年龄、颜色、体重;行为有:走、跑、叫)
- 对象:是一类事物的具体体现。对象是类的一个实例,必然具备该类事物的属性和行为。(实例:一只橘猫;属性:咪咪、2、黄、10;行为:快走,慢跑,喵喵叫)
- 类和对象的关系:类是对一类事物的描述,是抽象的(如手机图纸)。对象是一类事物的实例,是具体的(真正的手机)。类是对象的模板,对象是类的实体。
2、类的定义
- 格式
public class ClassName{
//成员变量(属性),直接定义在类当中,在方法外
//成员方法(行为),不要写static关键字。
}
- 学生类例子
public class Student{ //类名单词首字母都大写
//成员变量
String name;
int age;
//成员方法
public void eat(){
System.out.println("吃饭咯");
}
public void sleep(){
System.out.println("睡觉啦");
}
public void study(){
System.out.println("学习去");
}
}
3、对象的创建及使用
- 导包:指出需要使用的类在什么位置。
import 包名称.类名称;
对于和当前属于同一个包的的情况,可以省略导包语句。 - 创建
类名称 对象名 = new 类名称();
Student stu = new Student(); - 使用
使用成员变量:对象名.成员变量 (没赋值时,有默认值)
使用成员方法:对象名.成员方法(参数)
public static void main(Sting[] args){
// 1.导包省略
// 2.创建对象
Student stu = new Student();
// 3.使用成员变量
System.out.println(stu.name); //未对成员变量赋值,输出默认值null
System.out.println(stu.age); //未对成员变量赋值,输出默认值0
stu.name = "咸咸"; //给成员变量赋值
stu.age = 17;
System.out.println(stu.name); //咸咸
System.out.println(stu.age); //17
// 4.使用成员方法
stu.eat(); // 吃饭咯
stu.sleeep(); // 睡觉啦
stu.study(); // 学习去
}