6. JavaSE-面向对象简介

面向对象

    面向对象本身是一种思想,而非一种编程算法。

例如:

    面向对象:冰箱打开、冰箱存储、冰箱关闭

    面过程:打开冰箱、将大象放进去、关闭冰箱门


面向过程思想:强调的是过程(动作及函数)

面向对象思想:强调的是对象(实体)

 

面向过程:C语言

面向对象:javac++c#、Python

 

面向对象:

    1. 符合人们的思考习惯

    2. 将复杂问题简单化

    3. 让曾经在面向过程之中的执行者变成面向对象中的指挥者

 

类和对象之间的关系:

    1. 类是模型  对象是该模型的实体(例如汽车的制造过程)

    2. 用java语言对现实生活中的事物进行描述(通过类的形式来体现的)

    3. 对于事物描述通常只关注两方面,即属性和行为(有四个轱辘、能跑)

    4. 只要明确该事物的属性和行为并定义在类中即可

 

对象:

    1. 其实就是该类实实在在存在的个体,通过new创建

    2. 在写程序之前一定要先分析,例如写汽车的类

        1)要先分析汽车有哪些属性(颜色、轮胎数),有哪些行为(运行)

        2)然后在具体的实例化


内存:堆内存(存储对象)、栈内存(存储临时变量)

对象的内存体现:在堆内存中

对象的出现:为封装数据,和数组类似

局部变量和成员变量:

    1. 成员变量定义在类中,整个类中都可以访问

    2. 局部变量定义在方法中,语句中,局部代码块中,在所属的区域有效

    3. 成员变量存在于堆内存的对象中

    4. 局部变量存在于栈内存的方法中

    5. 成员变量随着对象的创建而创建,随着对象的消亡而消亡

    6. 局部变量是随着自己所属的区域变化

    7. 成员变量都有默认初始化值,局部变量没有初始化值

    8. 局部变量和成员变量同名:局部变量将屏蔽成员变量


    注意:编程序一定要注意代码的清晰简洁,代码复用性

 

函数间参数传递分为引用参数传递(堆)和基本参数传递(栈);注意当对象做参数的时候,也是引用参数传递类型


封装:

    1. 在面向对象中是指隐藏对象的属性和实现细节,仅对外提供公共访问接口

    2. 提高安全性,对外提供访问接口的目的是因为属性可控


实例:电脑主机

    如属性的getset方法,在开发过程中,一般成员变量都是私有的,并且一定会伴有getset方法

你可能感兴趣的:(java,类,面向对象,实例)