Java学习日记num4

学习内容: 面向对象概述;封装;构造函数于构造代码块;this关键字;其他的一些知识点
 
一、面向对象的概述
 
1,面向过程与面向对象
面向过程强调的是功能的行为,面向对象是在面向过程的基础上,强调的是一个对象具有的功能,面向对象是建立在面向过程的基础之上的。
 
2,类与对象的区别
类是对现实中事物的描述,描述事物具有的属性,具备的什么样的功能。例如:对人的描述,人具备姓名,年龄,头发的颜色,性别,爱好等共同属性,以及具备吃饭,睡觉等共同功能
 
对象是现实生活中实实在在存在的个体。例如:一个叫张三的人,有年龄姓名性别,能吃饭睡觉,另外还有一个叫李四的人,也有自己的姓名年龄性别等。
 
二、封装(encapsulation)
1,封装概念
封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。也就是说,我给你提供你使用的方式,你不必管他是怎么实现的,你只管用就行了 。
2,封装原则
A,将不需要对外提供的内容都隐藏起来
B,把属性都隐藏,提供公共方法对其访问
3,private关键字
private中文意思是私有,她是一个权限修饰符,用于修饰类中的成员(成员变量和成员函数),被私有修饰的成员,只在本类中有效。
要特别注意的是:封装不是私有,私有仅仅是封装的一种常见的表现形式 。封装不等于私有。函数,类,包也是封装的表现形式。
三、构造函数与构造代码块
 
1、构造函数的特点
A,构造函数和类名一样
B,构造函数没有返回值类型
C,构造函数中没有return语句
 
2,构造函数的作用
构造函数是用于给对应的构造函数进行初始化的,当通过new操作符创建对象时,根据传入构造函数中的参数不同,调用与之对应的构造函数进行初始化
 
3,构造函数与一般函数的区别
A,构造函数用于给相对应的对象进行初始化。一般函数用于实现对象的某个特定功能。
B,构造函数在对象建立时执行并且只执行一次。一般函数可以被对象多次调用
C,他们的写法上也有很大的不同
 
4、构造函数的注意事项
  当一个类中没有手动定义个一个构造函数时,为了创建该类的对象,系统会默认的给该类添加一个空参数的默认构造函数;当一个类中自定义了构造函数时,系统就不会给改类添加默认的空参数的构造函数了,若在建立对象的过程中,还需要空参数的构造函数,那么就需要自定义这个空参数的构造函数了;一个类中可以存在多个构造函数,建立对象,改调用哪个构造函数,是通过构造函数的重载实现的。
5,构造代码块
    1)格式:{ 构造代码块的初始化内容 }
    2)作用:给所有对象进行初始化,构造代码代码块中存放的是该类对象的共性初始化内容。当对象一建立就运行,而且优先于构造函数运行。
     
四、this关键字
 
1,this关键字的作用?
    this关键字用于区分局部变量和成员变量,还用于类中构造函数之间的相互调用。类中构造函数相互调用时,this语句必须放在第一行。
 
2,this关键字的含义
    this代表所在类的对象,具体哪一个呢?就是代表他所在函数所属对象的引用。简单的说:哪个对象调用this所在的函数,this就代表哪个对象。
 
3,this关键字的应用
    当定义类中功能时,该函数内部要用到调用该函数的对象时,这时候用this来表示这个对象。但凡本类中使用到本类对象就使用this
 
五、其他的一些知识点
 
1,成员变量和局部变量的不同
成员变量定义在类中,作用范围是整个类,她存放于堆内存中。
局部变量定义在函数中或者语句中,作用范围就是所在的函数或所在的语句,她存放于栈内存中
2,匿名对象的使用
当对象只需要使用一次的时候,可以定义一个匿名对象
匿名对象还可以作为函数的实际参数传递过去。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。