面向过程 分析问题的步骤,而后逐步实现。
面向对象 (1)面向对象基于面向过程 (2)面向对象是找出解决问题的人,而后分配职责。 (3)对象中包含解决问题的步骤
面向对象更接近人的思想
面向对象的优点:高复用,高维护,高扩展java
类是具备相同属性和行为的一类事物的总称。 类中包含成员变量和成员方法。
public class Student{ int age;//成员变量 //成员方法 public String study(String something){ return something; } }
被private修饰的成员变量或者成员方法只能在该类中使用。安全
public class Student{ //被private修饰的成员变量可经过在类中定义成员方法进行获取或者修改 private int age; public int getAge(){ return age; } }
public class Student{ //被private修饰的成员变量可经过在类中定义成员方法进行获取或者修改 private int age; public Student(int age){ this.age = age; } public int getAge(){ return age; } }
做用场景:类中成员变量和局部变量名称相同的时候。 若是局部变量和成员变量重名,java采用就近原则
区别 | 详情 |
---|---|
在类中的位置 | 一、成员变量位于类中。 二、局部变量位于类中的方法中。 |
在内存中的位置 | 一、成员变量位于堆中。 二、局部变量位于栈中。 |
生命周期 | 一、成员变量随着对象的建立而建立,随着对象的消失而消失。 二、局部变量随着成员方法的调用而建立,随着方法的弹栈而消失。 |
初始化后的值 | 一、成员变量有初始化值。 二、局部变量没有初始化值。 |
对象是类的实例化 一个类能够实例无数对象
封装将多个基本数据类型封装成自定义数据类型。 封装能够保护数据安全。
封装隐藏实现的步骤,对外提供接口访问。
将需求拆分,用多个类协同实现,而不是一个类实现全部功能。
每一个变化点作成一个类
一个类应该只实现一个功能
类与类之间的数据交流应该尽量少