java中protect属性用法总结
来源:互联网 发布:Java毫秒和日期的换算 编辑:程序博客网 时间:2024/05/29 19:41
pojo类:
package com.lky.h1;public class Base { private Integer id; protected String name; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "Base [id=" + id + ", name=" + name + "]"; } }
test1类:
package com.lky.h1;import org.junit.Test;/*** @ClassName: test1* @Description: 同一个包内测试protect属性* @author Administrator* @date 2015年10月13日* */public class test1 extends Base{ /** * @Title: testBase * @Description: 父类本身的访问 */ @Test public void testBase(){ Base base=new Base(); base.setId(10);// base.id=9; 同一个包内private属性不能直接访问 base.name="lky";//同一个包内protect属性可以直接访问 System.out.println(base); } /** * @Title: testExends * @Description: 子类的访问 */ @Test public void testExends(){ test1 a=new test1(); a.name="lky";//protect属性在子类中可见,可以直接访问 a.setId(10);//private属性在子类中不可见,不能直接访问 System.out.println(a); }}
test2类
package com.lky.h2;import org.junit.Test;import com.lky.h1.Base;public class test2 extends Base { @Test public void testBase() { Base base = new Base(); // base.name="lky";不能直接访问 // base.id=10; 不能直接访问 base.setName("lky"); base.setId(10); System.out.println(base); } @Test public void testExends() { test2 a = new test2(); a.name = "lgh"; //可以直接访问// a.id = 10; //不能访问 a.setId(10); System.out.println(a); }}
总结:假设有类A和类B,且A类中有一个值属性为protect
- 若A和B在同一个包下:在B类中是可以通过A直接访问A中的protect属性,实验如test1的testBase
- 若A和B在同一个包下,并且B继承于A:在B类中也是可以直接访问A中的protect属性,实验如test1的testExtends
- 若A和B不在同一个包下:在B类中是不可以通过A来访问A中的protect属性,即该属性在B类中不可见,实验如test2中testBase
- 若A和B不在同一个包下,并其B继承于A:在B类中是可以访问到A中的protect属性,实验如test2的testExtends
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利
阅读全文
0 0
- java中protect属性用法总结
- java 中Protect 关键字
- java中protect,public,private的用法区别
- protect用法
- JAVA 中public private protect 的区别
- java中public,private,protect,default区别
- java中public,private,protect,default区别
- C++中public、protect和private用法区别
- css中属性选择器用法总结c
- Java中访问修饰符public、private、protect、default范围
- Java中访问修饰符public、private、protect、default范围
- java中public与private还有protect的区别
- Java中访问修饰符public、private、protect、default范围
- java中Calendar用法总结
- Java中super用法总结
- JAVA中this用法总结
- Java中final用法总结
- Java中static用法总结
- Unity官方实例教程 Roll-a-Ball 学习笔记
- java @Override错误的解决办法
- 基于PYTHON requests包,代理ip+header+延时爬取的简单实现
- VJ组队赛->House Building(5538)
- 百度编辑器上传视频以及视频编辑器预览bug解决
- java中protect属性用法总结
- java多态理解
- 显示一个饼图
- Tensorflow基础知识总结(2)
- jsp验证码
- All of LeetCode
- ScrollView与其子控件事件冲突的解决,以及怎样去禁止ScrollView的惯性滑动
- 提取有角度的形状的最小矩形,求其旋转角度、长宽
- webpack入门