Java修饰符
目录
1 package(了解)
1、包的概念
包就是文件夹,用来管理类文件的
2、包的定义格式
package 包名; (多级包用.分开)
例如:package com.zgl.demo;
3、带包编译&带包运行
带包编译:javac –d . 类名.java
例如:javac -d . com.zgl.demo.HelloWorld.java
带包运行:java 包名+类名
例如:java com.zgl.demo.HelloWorld
2 import(理解)
导包的意义
使用不同包下的类时,使用的时候要写类的全路径,写起来太麻烦了
为了简化带包的操作,Java就提供了导包的功能
导包的格式
格式:import 包名;
范例:import java.util.Scanner;
示例代码(没有使用导包,创建的Scanner对象)
package com.zgl;
public class Demo {
public static void main(String[] args) {
// 1. 没有导包,创建Scnaner对象
java.util.Scanner sc = new java.util.Scanner(System.in);
}
}
示例代码(使用导包后,创建的Scanner对象)
package com.zgl;
import java.util.Scanner;
public class Demo {
public static void main(String[] args) {
// 1. 没有导包,创建Scnaner对象
Scanner sc = new Scanner(System.in);
}
}
3 权限修饰符(理解)
4 fifinal(应用)
fifianl关键字的作用
fifinal代表最终的意思,可以修饰成员方法,成员变量,类
fifinal修饰类、方法、变量的效果
fifianl修饰类:该类不能被继承(不能有子类,但是可以有父类)
fifinal修饰方法:该方法不能被重写
fifinal修饰变量:表明该变量是一个常量,不能再次赋值
5 fifinal修饰局部变量(理解)
fifianl修饰基本数据类型变量
fifinal 修饰指的是基本类型的数据值不能发生改变
fifinal修饰引用数据类型变量
fifinal 修饰指的是引用类型的地址值不能发生改变,但是地址里面的内容是可以发生改变的
举例:
public static void main(String[] args){
final Student s = new Student(23);
s = new Student(24); // 错误
s.setAge(24); // 正确
}
6 static(应用)
static的概念
static关键字是静态的意思,可以修饰【成员方法】,【成员变量】
static修饰的特点
1. 被类的所有对象共享,这也是我们判断是否使用静态关键字的条件
2. 可以通过类名调用当然,也可以通过对象名调用【推荐使用类名调用】
class Student {
public String name; //姓名
public int age; //年龄
public static String university; //学校 共享数据!所以设计为静态!
public void show() {
System.out.println(name + "," + age + "," + university);
}
}
public class StaticDemo {
public static void main(String[] args) {
// 为对象的共享数据赋值
Student.university = "传智大学";
Student s1 = new Student();
s1.name = "林青霞";
s1.age = 30;
s1.show();
Student s2 = new Student();
s2.name = "风清扬";
s2.age = 33;
s2.show();
}
}
7 static访问特点(掌握)
static的访问特点
非静态的成员方法
能访问静态的成员变量
能访问非静态的成员变量
能访问静态的成员方法
能访问非静态的成员方法
静态的成员方法
能访问静态的成员变量
能访问静态的成员方法
总结成一句话就是: 静态成员方法只能访问静态成员