Java详细讲解包的作用以及修饰符的介绍
作者:小学生!! 时间:2021-09-14 05:27:26
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);
}
}
来源:https://blog.csdn.net/m0_54024106/article/details/124367136
标签:Java,包,修饰符
0
投稿
猜你喜欢
Android基于TextView实现跑马灯效果
2023-07-25 06:32:45
Java轻松掌握面向对象的三大特性封装与继承和多态
2021-07-27 02:39:11
java设计模式之工厂模式实例详解
2023-11-24 23:35:12
SpringMVC Interceptor拦截器使用教程
2022-05-11 02:17:22
C# Bitmap 复制的小例子
2023-01-19 12:49:39
Java编程中的4种代码块详解
2022-01-04 03:10:20
Spring JPA之save方法示例详解
2023-09-06 15:50:35
JAVA的反射机制你了解多少
2023-11-29 16:46:38
Java二维数组与动态数组ArrayList类详解
2023-07-31 19:53:56
springboot搭建访客管理系统的实现示例
2023-09-02 13:10:41
rocketmq如何修改存储路径
2022-08-20 08:00:57
Java设计模式之访问者模式使用场景及代码示例
2021-06-27 13:34:25
SpringBoot+SpringSession+Redis实现session共享及唯一登录示例
2023-10-07 07:56:17
Java注解与反射原理说明
2021-06-18 01:56:00
java中fork-join的原理解析
2023-12-13 08:49:16
SpringBoot线程池和Java线程池的使用和实现原理解析
2022-06-27 07:22:30
Jsoup解析html实现招聘信息查询功能
2022-01-08 19:38:07
Jpa Specification如何实现and和or同时使用查询
2023-10-17 20:49:38
零基础写Java知乎爬虫之获取知乎编辑推荐内容
2023-11-29 04:33:39
Thymeleaf 3.0 自定义标签方言属性的实例讲解
2023-03-24 20:40:23