面向对象
1.类和对象
1.1什么是对象
万物皆对象,客观存在的事物皆为对象
例如:一辆汽车,一个苹果,一台电脑
1.2什么是面向对象
贴吧找了一个可以说很形象的图片了
## 1.3什么是类
类是对现实生活中一类具有共同属性和行为的事物的抽象
类的特点:
- 类是对象的数据类型
- 类是具有相同属性和行为的一组对象的集合
1.4什么是对象的属性
属性:对象具有的各种特征,每个对象的每个属性都拥有特定的值
- 属性:指事物的特征
例如:手机事物(品牌,价格,尺寸)
1.5什么是对象的行为
行为:对象能够执行的操作
- 行为:指事物能执行的操作
例如:手机事物(打电话,发短信)
1.6类和对象的关系
类:类是对现实生活中一类具有共同属性的行为和事物的抽象
对象:是能够看得到摸得着的真是存在的实体
简单理解:类是对事物的一种描述,对象则为具体存在的事物
1.7类的定义
类的重要性:是Java程序的基本组成单位
类是什么:是对现实生活中一类具有 共同属性和 行为的事物的抽象,确定对象
类的组成: 属性和 行为 - 属性:在类中通过 <成员变量来体现(类中方法外的变量) - 行为:在类中通过 成员方法来体现(和前面的方法相比去掉static关键字即可)
类的定义步骤:
1.定义类 public class 类名{
2.编写类的成员变量 //成员变量
3.编写类的成员方法 变量1的数据类型,变量1
变量2的数据类型,变量2;
........
//成员方法
方法1;
方法2;
.......
}
示例代码:手机(Phone)成员变量:品牌(brand)价格(price)成员方法:打电话(call)发短信(sendMessage)
public class Phone {
//成员变量
String brand;
int price;
//成员方法
public void call(){
System.out.println("打电话");
}
public void sendMessage(){
System.out.println("发短信");
}
}
1.8对象的使用
创建对象
- 格式:类名 对象名=new 类名();
- 范例:Phone p=new Phone();
使用对象
1:使用成员变量 - 格式:对象名.变量名
- 范例:p.brand
2.使用成员方法 - 格式:对象名.方法名()
- 范例:p.call()
- new出来的东西在堆内存,拥有默认值
public static void main(String[] args){
//创建对象
Phone p=new Phone();
//使用成员变量
System.out.println(p.brand);
System.out.println(p.price);
p.brand="小米";
p.price=2999;
System.out.println(p.brand);
System.out.println(p.price);
//使用成员方法
p.call();
p.sendMessage();
}
输出结果:
null
0
小米
2999
打电话
发短信
1.9案例:学生
需求:首先定义一个学生类,然后定义一个学生测试类,在学生测试类中通过对象完成成员变量和成员方法的使用
分析:
成员变量:姓名,年龄…
成员方法:学习,做作业…
- 定义一个学生类
类名:Student
成员变量:name,age
成员方法:study(),doHomework() - 定义学生测试类
类名StudentDemo
因为要做测试,所以有一个主方法:main方法 - 在学生测试类中通过对象完成成员变量和成员方法的使用
给成员变量赋值,输出成员变量的值
调用成员方法
2.什么是成员变量和局部变量
成员变量:类中方法外的变量
局部变量:类中方法中的变量
2.1成员变量和局部变量的区别
区别 | 成员变量 | 局部变量 |
---|---|---|
类中位置不同 | 类中方法外 | 方法内或者方法声明上 |
内存中的位置不同 | 堆内存 | 栈内存 |
生命周期不同 | 随着对象的存在而存在,随着对象的消失而消失 | 随着方法的调用而存在,随着方法的调用完毕而消失 |
初始化值不同 | 有默认的初始化值 | 没有默认的初始化值,必须先定义,赋值,才能使用 |
理想的咸鱼猿©个人笔记