时间:2021-05-20
Java包中的相关概念
包的概念
Java中的包类似于操作系统中的文件夹,将具有类似功能的类或者相同的类放在相同的包里面,便于组织与管理
包的作用
1.一是开发过程中避免类名重复问题;
2.二是对代码整理归类,将功能相近的类放到一个包中管理;
3.三是限定访问权限(default)就是包访问权限。
简述调用某个包中的类的三种方式
1>使用一个类的全名:即包名+类名
注意:在包中,所有类对真正名字将是包名+类名的组合,所以在运行的时候要将包层给写上,不能直接写类名。
2>使用import语句导入一个包中的所有的类。
3>使用import语句导入一个包中的特定的类。
Java中访问控制符的具体用法
为什么需要控制对成员的访问?
第一个原因是防止程序员接触他们不该接触的东西---通常是内部数据类型的设计思想。
进行访问控制的第二个原因是允许库设计人员修改内部结构,不用担心它会对客户程序员造成什么影响。Java的访问控制级别分类
1.类访问控制级别
2.对象访问控制级别
访问权限
访问权限 同一个类内部 同一个包内部 不同包中的子类 不同包的非子类 public ∨ ∨ ∨ ∨ protected ∨ ∨ ∨ × default ∨ ∨ × × private ∨ × × ×
总结:
1>在一个类的内部,访问控制符是透明的,失效的
2>在同一个包的内部,只有private有成员不能进行访问
3>在不同包存在继承关系的两个类之间,只有public成员和protected成员可以进行访问
4>在不同包之间,只有共有成员可以进行访问
代码演示
(1)在一个类的内部,所有的成员彼此之间都可以进行相互访问,访问控制符是透明的,失效的,共有的可以调用私有的,私有的可以调用共有的。
package com.vg.demo01;public class TestAccessModifier { public void test1(){ System.out.println("我是public"); } protected void test2(){ System.out.println("我是protected"); } void test3(){ System.out.println("我是default"); } private void test4(){ System.out.println("我是private"); } public static void main(String[] args) { TestAccessModifier t=new TestAccessModifier(); t.test1(); t.test2(); t.test3(); t.test4();}}我是public
我是protected
我是default
我是private
(2)在同包不同类之间,只有其私有成员不可以通过类对象名的方式进行访问,共有成员和保护型的成员都可以通过这种方式进行访问. 简言之:在同一个包的内部,只有其私有成员不能够进行访问
package com.vg.demo01;//private是不能在同包的子类中起作用的。public class TestAccessModifierSon extends TestAccessModifier{ public static void main(String[] args ) { TestAccessModifierSon s = new TestAccessModifierSon(); s.test1(); s.test2(); s.test3(); } }我是public
我是protected
我是default
我是public
我是protected
我是default
(3)在不同包存在继承关系的两个类之间,只有共有类的共有成员和共有类的保护型成员才可以被另外一个包中的子类进行访问,但是在一个子类的外部,只有共有类的共有成员才可以被直接的访问.
package com.vg.demo02;import com.vg.demo01.*;//在不同的包中,类的子类只有public、protected这俩个可以产生效果public class TestAccessModifierOtherSon extends TestAccessModifier{ public static void main(String[] args) { TestAccessModifierOtherSon th = new TestAccessModifierOtherSon(); th.test1(); th.test2(); }}我是public
我是protected
(4)在不同包无任何关系的两个类之间,只有共有类的共有成员才可以被另外一个包中的类进行访问.
package com.vg.demo02;import com.vg.demo01.TestAccessModifier;public class TestAccessModifierOtherNotSon { public static void main(String[] args) { TestAccessModifier t = new TestAccessModifier(); t.test1(); }}我是public
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Java访问修饰符(访问控制符)Java通过修饰符来控制类、属性和方法的访问权限和其他功能,通常放在语句的最前端。例如:publicclassclassName
Java的访问控制符还能用于类,这时它会决定,用户能够使用类库里的那些类。如果要允许客户程序员使用一个类,你可以用public关键词来定义这个类。它会控制,客户
本文实例讲述了JavaScript中定义类的方式。分享给大家供大家参考,具体如下:Javascript本身并不支持面向对象,它没有访问控制符,它没有定义类的关键
本文详细分析了C#类的访问修饰符用法,分享给大家供大家参考。具体用法分析如下:默认情况下,类声明为内部的,即只有当前工程中的代码才能访问它。可以用interna
本文实例讲述了Java中BigDecimal类的简单用法,是Java程序设计中非常实用的技巧,分享给大家供大家参考。具体用法分析如下:一般来说,一提到Java里