java扫描包内所有类_第20天|Java入门有野,修饰符
在声明类、变量和方法时,可用修饰符指定对其的访问权限。Java通过指定不同的关键字,可以支持4种不同的级别访问权限。
public : 公开,对所有类可见。protected : 保护,对在同一个包内的class和所有子类可见;private : 在同一类内可见;default : 默认,在同一包内可见,不使用任何修饰符。
20.1 类的修饰
在包lao.chen下新建Girl,代码里用private修饰年龄age,用public修饰描述原因,自己尝试在SingleDog里调用age,你就会发现,根本调用不了,这是为什么呢?--因为女人的年龄是不可以随便访问的(其实是用了private关键字限定了访问权限)。
package lao.chen;public class Girl { private int age = 32; public boolean marry = false; public String getDesc() { return "没找到合适的结婚对象."; }}在好用的开发工具里,如果你想通过类调用被声明为private的方法或变量时,是找不到的。因为工具会帮你做判断,避免你走弯路。
/** * 老陈说编程 * 修饰符的讲解 */import lao.chen.Girl;//类名:单身狗SingleDogpublic class SingleDog { public static void main(String[] args) { //声明一个对象 Girl girl = new Girl(); //没结婚的原因 if (!girl.marry) { System.out.println(girl.getDesc()); } }}输出结果
没找到合适的结婚对象.20.2 同一包内
一个女孩子到了一定年龄还没结婚时,只要有人问起年龄,就一味地说没找到合适的话,那是真的是想光棍一辈子。像闺蜜想给你介绍一个韩国欧巴都不行,因为她也不知道你的年龄。为此,你只好将修饰age的private修改成protected,让同你一个包(圈)的人知道,好让她帮你物色对象。
package lao.chen;public class Girl { protected int age = 32; public boolean marry = false; public String getDesc() { return "没找到合适的结婚对象."; }}将SingleDog类移到和Girl同一个包lao.chen里面,再次尝试用类的实例调用age。这下可以了吧。
package lao.chen;/** * 老陈说编程 * 修饰符的讲解 *///类名:单身狗SingleDogpublic class SingleDog { public static void main(String[] args) { //声明一个对象 Girl girl = new Girl(); System.out.println("没结婚的真实原因,是年龄有:" + girl.age + "岁了。"); }}输出结果
没结婚的真实原因,是年龄有:32岁了。虽然只是在变量里讲解了public、protected用private方法,但在方法、类的意义是完全一样的。你要学会触类旁通,举一反三哦。
在声明类、变量和方法时,可用修饰符指定对其的访问权限。Java通过指定不同的关键字,可以支持4种不同的级别访问权限。
public : 公开,对所有类可见。protected : 保护,对在同一个包内的class和所有子类可见;private : 在同一类内可见;default : 默认,在同一包内可见,不使用任何修饰符。

好了,有关Java修饰符的内容就说这么多了,如果你觉得老陈这样说还可以的话,你就转发和点赞,你的轻轻一点,就是对老陈继续创作的最大鼓励和支持。
一个当了10年技术总监的老家伙,分享多年的编程经验。想学编程的朋友,可关注今日头条:老陈说编程。我在分享Python,前端、Java和App方面的干货。关注我,没错的。
#Java##APP##程序员##Web##Spring#
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
