黑马程序员_Java学习日记num4

------- java培训,android培训、期待与您交流! ----------
学习内容: 面向对象概述;封装;构造函数于构造代码块;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,匿名对象的使用
当对象只需要使用一次的时候,可以定义一个匿名对象
匿名对象还可以作为函数的实际参数传递过去。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值