Java详细讲解包的作用以及修饰符的介绍

 更新时间:2022年05月10日 14:14:01   作者:小学生!!  
本文主要讲述的是包的使用和注意事项和四种访问修饰符public,protected,默认的,private的访问范围及实例,感兴趣的朋友一起来看看

1.包

1.包的三大作用

  • 区分相同名字的类
  • 当类很多时,可方便管理
  • 控制访问范围

2.包的基本语法

package abc.www;

3.包的本质

实际上就是创建不同的文件夹/目录保存类文件

4.包的命名规则

只能包含数字,字母,下划线,小圆点,但不能数字开头,不能是关键字或保留字

5.包的命名规范

小写字母+小圆点,一般是com.公司名.项目名.业务模块名

6.常用的包

java.lang.* //默认引入

java.util.* //系统提供的工具包,工具类,例如之前使用的Scanner

java.net.* //网络包,网络开发

java.awt.* // java界面开发,GUI

7.注意事项和使用细节

  • package 的作用是声明当前类所在的包,需要放在类的最上面,一个类中最多只有一句package。
  • import指令位置在package下面,在类定义前面,可以有多句且没有顺序要求。

2.访问修饰符

1.4种访问修饰符的访问范围

访问级别访问控制修饰符同类同包不同包子类不同包
公开public
受保护protected
默认没有修饰符
私有private

2.使用注意事项

  • 修饰符可以用来修饰类中的属性,成员方法及类
  • 只有默认的和public才可以修饰类!,并且遵循上述访问权限的特点
  • 成员方法的访问规则和属性完全一样

3.具体实例说明

1. 同类

package com.wang.modifier1;
public class A {
    public int n1 = 100;
    protected int n2 = 200;
    int n3 = 300;
    private int n4 = 400;
    public  void m1(){
        //同一个类可以访问所有修饰符修饰的属性和方法
        System.out.println("n1="+n1+"n2="+n2+"n3="+n3+"n4="+n4);
    }
}

2. 同包

package com.wang.modifier1;
public class B {
    public void say() {
        A a = new A();
        //在同一个包类可以访问public,protected,默认,不能访问私有private
        System.out.println("a1=" + a.n1 + "a2=" + a.n2 + "n3=" + a.n3);
    }

}

3. 不同包子类

package com.wang.extend;
public class Student {//父类
    public int age;
    public String name;
    private Double score;
    String hobby;
}
package com.wang.modifier1;//不同包
import com.wang.extend.Student;
public class B extends Student {//子类
    public void say() {
        //不同包子类可以访问父类的public,protected,不能访问默认的和private
        System.out.println(name + age);
    }
}

4. 不同包

package com.wang.modifier2;
import com.wang.modifier1.A;
public class Test {
    public static void main(String[] args) {
        A a = new A();
        //不同包下,可以访问 public 修饰的属性和方法
        //但不能访问 protected,默认,private 修饰的属性和方法
        System.out.println(a.n1);
    }
}

到此这篇关于Java详细讲解包的作用以及修饰符的介绍的文章就介绍到这了,更多相关Java包的作用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深入学习java位运算的基础知识

    深入学习java位运算的基础知识

    位运算是直接对整数在内存中的二进制位进行操作吗,位运算即可以节约内存,同时使程序速度更快效率更高。文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,下面我们来一起学习下吧
    2019-06-06
  • Java虚拟机栈jvm栈的作用

    Java虚拟机栈jvm栈的作用

    本文主要介绍了Java虚拟机栈jvm栈的作用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • Java volatile关键字原理剖析与实例讲解

    Java volatile关键字原理剖析与实例讲解

    volatile是Java提供的一种轻量级的同步机制,Java 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量,本文将详细为大家总结Java volatile关键字,通过详细的代码示例给大家介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • 使用logback屏蔽一些包的日志

    使用logback屏蔽一些包的日志

    这篇文章主要介绍了使用logback屏蔽一些包的日志,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • java模拟post请求登录猫扑示例分享

    java模拟post请求登录猫扑示例分享

    这篇文章主要介绍了java模拟post请求登录猫扑的小示例,需要的朋友可以参考下
    2014-02-02
  • RabbitMQ 延迟队列实现订单支付结果异步阶梯性通知(实例代码)

    RabbitMQ 延迟队列实现订单支付结果异步阶梯性通知(实例代码)

    这篇文章主要介绍了RabbitMQ 延迟队列实现订单支付结果异步阶梯性通知,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02
  • 在Java编程中定义方法

    在Java编程中定义方法

    这篇文章主要介绍了在Java编程中定义方法,是Java入门学习中的基础知识,需要的朋友可以参考下
    2015-10-10
  • Java应用EasyExcel工具类

    Java应用EasyExcel工具类

    这篇文章主要介绍了Java应用EasyExcel工具类,文中有非常详细的代码示例,对正在学习java的小伙伴们有一定的帮助,需要的朋友可以参考下
    2021-05-05
  • 详谈cxf和axis两种框架下的webservice客户端开发

    详谈cxf和axis两种框架下的webservice客户端开发

    这篇文章主要介绍了详谈cxf和axis两种框架下的webservice客户端开发,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • 详细了解MVC+proxy

    详细了解MVC+proxy

    Java有两种代理方式,一种是静态代理,另一种是动态代理。对于静态代理,其实就是通过依赖注入,对对象进行封装,不让外部知道实现的细节。很多 API 就是通过这种形式来封装的
    2021-07-07

最新评论