java基础深度解析(全)

java基础深度解析(全)

ID:41514071

大小:87.58 KB

页数:15页

时间:2019-08-26

java基础深度解析(全)_第1页
java基础深度解析(全)_第2页
java基础深度解析(全)_第3页
java基础深度解析(全)_第4页
java基础深度解析(全)_第5页
资源描述:

《java基础深度解析(全)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Java的访问控制Java的访问控制修饰符共有4个,分别是public^protecteddefault、private。下面我们分别进行讲解。4.6.1类成员的访问控制private访问控制在本章的前面,我们己经明AYprivate访问控制符的作用,如果一个成员方法或成员变量名前使用了private访问控制符,那么这个成员只能在这个类的内部使用。注意::不能在方法体内声明的变量前加private修饰符。缺省访问控制如果一个成员方法或成员变虽名前没有使用任何访问控制符,我们就称这个成员是缺省的(default),或是友元的(

2、friendly),或是包类型的(package)0对于缺省访问控制成员,可以被这个包中的其他类访问,如果一个子类与父类位于不同的包中,子类也不能访问父类中的缺省访问控制成员。protected访问控制如果一个成员方法或成员变量名前使用了protoctod访问控制符,那么这个成员即可以被同一个包屮的其他类访问,也可以被不同包中的子类访问。public访问控制如果一个成员方法或成员变量名前使用了public访问控制符,那么这个成员即可以被所有的类访问,不管访问类与被访问类是否在同一个包中。最后,我们用一张图来总结上述访问控制符

3、的权限。privatedefalutprotectedpublic同一类VVVV同一包中的类777子类VV其他包中的类7表4.14.6.2类的访问控制除了类中的成员有访问控制外,类本身也有访问控制,即在定义类的class关键字前加上访问控制符,但类本身只有两种访问控制,即public和默认,父类不能是private和protected,否则子类无法继承。public修饰的类能被所有的类访问,默认修饰(即class关键字前没有访问控制符)的类,只能被同一包屮的所有类访问。多学两招:只要在class之前,没有使用public修饰

4、符,源文件的名称可以是一切合法的名称。带有public修饰符的类的类名必须与源文件名相同,读者可以想一想,一个.java源文件屮能否包含多个public的类呢?4.6.3Java的命名习惯养成良好的命名习惯,意义重大,如果大家的习惯都一样,我们就能够很容易使用别人提供的类,别人也很容易理解我们的类,对此,我送给读者一句话,“勿以善小而不为,勿以恶小而为之”!下面是Java中的一些命名习惯,假设xxx,yyy,zzz分别是一个英文单词的拼写。1.包名屮的字母一律小写,如:xxxyyyzzzo2.类名、接口名应当使用名词,每个单

5、词的首字母大写,如:XxxYyyZzzo3.方法名,第一个单词小写,后面每个单词的首字母大写,如:xxxYyyZzz04.变量名,第一个单词小写,后面每个单词的首字母大写,如:xxxYyyZzz05.常量名中的每个字母一律大写,如:XXXYYYZZZoJava中的抽象和接口4.2.1抽象类Java中可以定义一些不含方法体的方法,它的方法体的实现交给该类的子类根据自己的情况去实现,这样的方法就是抽象方法,包含抽象方法的类就叫抽象类。一个抽象类中可以有一个或多个抽象方法。抽象方法必须用abstract修饰符來定义,任何带有抽象方

6、法的类都必须声明为抽象类。抽象类定义规则1.抽象类必须用abstract关键字来修饰;抽象方法也必须用abstract来修饰。2.抽象类不能被实例化,也就是不能用new关键字去产生对彖。3.抽象方法只需声明,而不需实现。4.含有抽象方法的类必须被声明为抽象类,抽象类的子类必须覆盖所有的抽象方法后才能被实例化,否则这个子类还是个抽象类。抽象方法的写法:abstract返回值类型抽象方法(参数列表);抽象类和抽象方法的例子:abstractclassA{abstractintaa(intx,inty);注意:含有抽象方法的类肯定

7、是抽象类,抽彖类中的某个方法不一定是抽象的。4.2.2接口(interface)如果一个抽彖类中的所有方法都是抽彖的,我们就可以将这个类用另外一种方式来定义,也就是接口定义。接口是抽象方法和常量值的定义的集合,从本质上讲,接口是一种特殊的抽象类,这种抽象类屮只包含常量和方法的定义,而没有变量和方法的实现。下面是一个接口定义例子:publicinterfaceRunner{intID=1;voidnun();}在接口Runner的定义中,即使我们没有显示的将其中的成员用public关键字标识,但这些成员都是public访问类型

8、的。接口里的变量默认是用publicstaticfinal标识的,所以,接口中定义的变量就是全局静态常量。我们可以定义一个新的接口用extends关键字去继承一个已有的接口,我们也可以定义一个类用implements关键字去实现一个接口中的所有方法,我们还可以去定义一个抽象类用implem

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。