📄个人简介
🔔作者简介:大家好,我是小学生!!🙈大二学生一枚,目前正在自学Java,如果大家觉得我写的还不错的话,希望大家给我点赞👍+收藏⭐+评论📢,有什么写的不对的地方还请大家多多指教🙏,共同进步。
📝个人主页:小学生!!
📖系列专栏
🌕阶段一:Java基础编程
💦目前已原创10篇🌕阶段二:数据结构与算法
🌕阶段三:操作系统
🌕阶段四:计算机网络
🔥本文主要讲述的是包的使用和注意事项和四种访问修饰符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);
}
}
3. 🧅不同包
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);
}
}