发表于: 2017-11-01 22:15:14

2 673


今天学习的内容
昨天的代码有很多不理解的地方,但是一直不明白什么原因,今天才发现有一部分基础没看,导致代码看不懂,今天主要在补这方面的基础.
封装
封装是面向对象的三大基础之一,它指的是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问,封装有以下目的
1隐藏类的实现细节;
2让使用者只能通过事先预定的方法来访问数据,从而可以在该方法里加入控制逻辑,限制对成员变量的不合理访问;
3可进行数据检测,从而有利于保证对象信息的完整性;
4便于修改,提高代码的可维护性.
为了实现良好的封装,需要从两方面考虑
1将对象的成员变量和实现细节隐藏以来,不允许外部直接访问;
2把方法暴露出来,让方法来控制对这些成员变量进行安全的访问和操作.
访问控制符
private(当前类访问权限):如果类里的一个成员使用private访问控制符来修饰,则这个成员只能在当前类的内部被访问.
default(包访问权限):如果类里的一个成员或者一个外部类不适用任何访问控制符修饰,就称它是包访问权限的,default访问控制的成员或外部类可以被相同包下的其他类访问.
protected(子类访问权限):如果一个成员使用protected访问控制符修饰,那么这个成员既可以被同一个包中的其他类访问,也可以被不同包中的子类访问.
public(公共访问权限):这是一个最宽松的访问控制级别,如果一个成员或者外部类使用public访问控制符修饰,那么这个成员或外部类就可以被所有类访问,不管访问类和被访问类是否处于同一个包中,是否具有父子继承关系.
成员变量和局部变量
成员变量指的是在类里定义的变量;局部变量指的是在方法里定义的变量.
成员变量分为类变量和实例变量两种,定义成员变量时没有static修饰的就是实例变量,有static修饰的就是类变量.
局部变量根据定义形式的不同,又可以被分为以下三种
1形参:在定义方法签名时定义的变量,形参的作用域在整个犯法内有效.
2方法局部变量:在方法体内定义的局部变量,它的作用域是从定义该变量的地方生效,到该方法结束时生效.
3代码块局部变量:在代码块中定义的局部变量,这个局部变量的作用域从定义该变量的地方生效,到该代码块结束时失效.
方法重载
java允许同一个类里定义多个同名方法,只要形参列表不同就行,如果同一个类中包含了两个或两个以上方法的方法名相同,但形参列表不同,则被称为方法重载,在java中确定一个方法需要三个要素:
1调用者,也就是方法的所属者,既可以是类,也可以是对象.
2方法名,方法的标识.
3形参列表,当调用方法时,系统将会根据传入的实参列表匹配.
方法重载的要求就是两同一不同:同一个类中方法名相同,参数列表不同.
形参个数可变的方法
java允许定义形参个数可变的参数,从而允许为方法指定数量不确定的形参,如果在定义方法时,在最后一个形参的类型后增加三点(...),则表明该形参可以接受多个参数值,多个参数值被当成数组传入.
方法的参数传递机制
java里方法的参数传递方式只有一种:值传递,所谓值传递,就是将实际参数值的副本(复制品)传入方法内,而参数本身不会受到任何影响.
遇到的问题
今天主要在补基础,前面做了一点JDBC一直有些地方弄不明白,今天补基础的时候才知道是怎么回事.
今天的收获
今天看了<java疯狂讲义>第五章方法详解,成员变量局部变量,封装.
明天的计划
明天应该还是要补构造器的基础,然后继续做jdbcTemplate.



返回列表 返回列表
评论

    分享到