什么是对象?
理解:
对象(object):
-
可以视为一种数据管理的方式。
-
在内存中对象就是一个内存块,一小块数据。里面有很多内容。包含了很多的数据。
现在需要理解的是:
-
到底包含了什么样的数据?
-
块里有什么内容?
-
为什么要这样包含?
详解
在程序最初发展的时候是不需要对象的,只需要基本的数据类型
然而事物的发展总是遵循"量变引起质变"的哲学原则,企业管理和数据管理、社会管理也有很多共通之处。
因为最初的方式适应不了发展所以引入了对象的概念。---因为数据的增加
三个阶段:
-
数据无管理时代
-
数组管理和企业部门制
-
对象和企业项目制
数据无管理时代
特点:
整个程序只有几个或者几十个变量,用于保存数据。这个时候不需要做任何的管理。---类似于企业发展的初期
数组管理和企业部门制
本质:
归类
-
在编程中是指"将同类数据放到一起"形成了"数组(array)"的概念。这是归类的意思,便于管理数据、管理人。
-
实例:
-
需要一些变量存储班级当中32个学生的年龄,那么就有32个变量。每增加一个属性就要增加32个变量。---数组(数组也是对象)的概念
-
age[] = {23,19,20,21,22,23}
/*
同类型的数据放到一起
形成了"类"的概念
*/ -
-
-
在企业中是指讲类型一致的人放到一起
对象何企业项目制
以项目为单位,例如:微信项目组,上千号人全部为微信做服务。包括研发、测试、产品、UI、财务、人力等等,和一个公司没有什么区别。干的是微信这个服务里面的全部的功能。---类似于我们的对象
本质:
随着变量增加,对数据的操作(方法)也复杂了。---对象包含了不同类型的数据
类是包含了相同类型的数据,对象是包含了不同类型的数据---一个内存块
-
将相关数据何相关方法封装到一个独立的实体产生了"对象"的概念
-
类比到企业就是项目组的方式
举例:
一个学生对象:
有属性(静态特征):年龄:18,姓名:xxx,学号:1234
有方法(动态行为):学习、吃饭、考试
将方法、属性打包放在一起,方便管理。---数据+方法
获得一个对象就确定这个对象里面有这些数据
实例:
/**
* 创建类
* @author Lucifer
*/
public class Student {
/*一个学生类应该包含这三个属性
1.id
2.name
3.age
这样的话根据这个类创建的对象都会包含这些属性---成员变量的作用域
对象里面可以包含方法---光有属性没有方法被称之为结构体
方法用于定义该类或该类实例的行为特征和功能实现
*/
int id;
String name;
int age;
/*
现在定义他的方法:
1.学习
2.玩游戏
*/
void study(){
System.out.println("Good Good Study,Day Day Up");
return;
}
void play(){
System.out.println("I am play game");
}
/*
一个简单的类包含了:
1.成员变量---属性
2.方法
这样就定义好了一张图纸,但是没有对象。
main方法是程序执行的入口(主线程)可以放在这个类里面也可以放在别的类里面,都可以。
*/
public static void main(String args[]){
Student stu = new Student();
//当输入:stu(对象名)+'.'的时候就会出现前面定义的属性和方法---涉及到继承的概念
stu.play(); //调用play
}
}
/*
public是访问修饰符
class是类
Student是类名
根据类的模板去创建相关的对象
一个类当中通常有两个东西:
1.属性(field):通常用来表示静态的特征,有时候属性也被称之为:成员变量
2.方法:
*/
总结:
-
我们会根据实际情况抽象出他们的特点然后创建类
-
根据类定义他们的属性和方法
-
所以一个简单的类包含的两个点:
-
属性
-
-