面向过程:当实现一个功能时,需要亲力亲为,处理每个细节。
面向对象:当实现一个功能时,不关心具体的实现步骤,只关心结果,找一个具有该功能的类,帮我们做事。
(1)面向对象是基于面向过程的编程思想.
(2)面向过程:强调的是每一个功能的步骤
(3)面向对象:强调的是对象,然后由对象去调用功能
(1)是一种更符合我们思考习惯的思想
(2)可以将复杂的事情简单化
(3)角色发生了转换,将我们从执行者变成了指挥者
世界万物皆对象
类:是一组具有类似属性和行为的集合。可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述该事物。
属性:就是该事物的状态信息。
行为:就是该事物能够做什么。
对象:是一类事物的具体体现。对象是类的一个实例,必然具备该类事物的属性和行为。
类是对一类事物的描述,是抽象的
对象是一类事物的实例,是具体的
类是对象的模板,对象是类的实体
访问权限修饰符 class 类名 {
//成员变量 属性特征
//成员方法 行为特性
}
类名 对象名 = new 类名();
成员变量:类中,方法外
局部变量:方法中或者方法声明上(形式参数)
成员变量:类中
局部变量:方法中
成员变量:有默认值
局部变量:没有默认值。必须先定义,赋值,最后使用
成员变量:堆内存或者方法区
局部变量:栈内存
成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
方法:就是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集。
访问权限修饰符 静态修饰符 返回值类型 方法名(参数类型 参数名,参数类型 参数名...){
执行代码...
return 返回语句;
}
// 先创建具体的Student对象
Student s = new Student();
// 接着,使用对象来调用具体方法
s.run("tom",123);
对象名.普通方法名
类名.静态方法名
每个方法在被调用执行的时候,都会进入栈内存,并且拥有自己独立的内存空间,方法内部代码调用完毕之后,会从栈内存中弹栈消失。
多个方法在在同一个类中
多个方法具有同一个方法名
多个方法的参数不同(类型不同或数量不同)