黑马程序员——Java基础---java面向对象基础

来源:互联网 发布:淘宝网棉麻绣花女装 编辑:程序博客网 时间:2024/05/16 11:14


------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

面向对象

面向对象是一种思想,从执行过程转变成指挥(调用)的过程。将功能封装进对象,强调具备了功能的对象,面向对象是基于面向过程的。为什么说是基于对象呢?比如猫抓老鼠,强调的是猫,并不是抓,而抓老鼠是封装在猫这个对象里面了;而抓老鼠,强调的是过程(动作过程),并不知道是谁在抓老鼠,这个动作属于谁?都不知道,想调用它。只能找这个动作过程,这就体现出来了封装性的好处。只要把一些功能封装在了某个对象中,不但自己可以随时调用它里面的任何功能,别人也可以调用。所以说面向对象在现实生活中随处可见,我们平时用的电脑,喝水的杯子,桌子,交通工具等等都是一个一个对象,只要他有存在的意义就一定有某种功能,所以我们每天都在面向各种对象,而自己其实也是一个对象!

比如:打开冰箱,存储进冰箱,关闭冰箱,都是强调动作的过程。

      而冰箱打开,冰箱存储,冰箱关闭,都是强调冰箱,而此时冰箱就是一个对象,

      在冰箱对象中有各种功能

 

面向对象三个特征: 封装,继承,多态。

    以后开发:其实就是找对象使用,没有对象,就创建一个对象。

             找对象,建立对象,使用对象;维护对象的关系。

类和对象的关系

    类:就是对现实生活中事物的描述。

    对象:就是这类事物,实实在在存在的个体。



 

成员变量和局部变量

    作用范围:成员变量作用于整个类中   局部变量作用于函数和语句中。

内存中的位置:成员变量在堆内存中,因为对象的存在才在内存中存在

              局部变量存在于栈内存中

匿名对象

匿名对象使用方式1:当对对象的方法只调用一次时,用匿名对象来完成,这样比较简化,如果对一个对象进行多个成员调用,必须给这个对象起个名字来调用其他的。注:匿名对象调用成员属性的话没有实际意义。因为它执行完后在堆内存中就成为垃圾了,因为执行一次创建一个新的对象实体。2可以讲匿名对象作为实际参数进行传递。

封装:是指隐藏对象的属性和实现细节,进对外提供公共访问方式

    好处:讲变化隔离,便于使用,提高重用性,提高安全性

封装的原则:讲不需要对外提供的内容都隐藏起来,把属性都隐藏,提供公共的方法对其访问

构造函数

    1 对象一建立就会调用与之对应的构造函数,作用是可以用于给对象进行初始化

2 小细节:当一个类中没有定义构造函数时,系统会默认给该类假如一个空参数的构造函数,当在类中自定义了构造函数后,默认构造函数就没有了。

构造函数和一般函数的区别

       构造函数 是在对象一建立就运行,给对象初始化,而且构造函数只运行一次

       一般函数 是对象调用才执行,给对象添加对象具备的功能并且可以被该对象调用多次

    如果给构造函数用private修饰 那么就不能创建构造函数相对应的队形,如果给所有的构造函数都用private修饰 那么该类就不能创建对象了

构造代码块

       作用:给对象进行初始化。对象一建立就运行,而且优先于构造函数执行

       和构造函数的区别:构造代码块是给所有对象进行统一初始化的。

                                     而构造函数是给对应的对象初始化的。

       构造代码块中定义的是不同对象共性的初始化内容

this关键字

       作用:用于区分局部变量和成员变量同名的情况

this:就代表本类的对象,创建的哪一个对象this就代表那一个对象。

this的应用:当定义类中的函数时,该函数内部要用到调用该函数的对象时

                     这时用this来表示这个对象

       this()语句:用于构造函数之间的互相调用。

0 0
原创粉丝点击