1 修饰符
1.1 包
1.1.1 包的概述和使用
- 其实就是文件夹
- 作用:对类进行分类管理
- 包的定义格式
- 格式: package 包名;(多级包用.分开)
- 范例: package com.ityanger;
带包的Java类编译和执行
- 手动建包:
- 按照以前的格式编译java文件: javac HelloWorld.java
- 手动创建包: 建立文件夹com, 然后在com下建立文件夹ityanger
- 把class文件放到包的最里面: 把HelloWorld.class文件放到com下的ityanger这个文件夹下
- 带包执行: java com.ityanger.HelloWorld
- 自动建包:
- javac -d . HelloWorld.java
- java com.ityanger.HelloWorld
1.2 导包
1.2.1 导包的概述和使用
使用不同包下的类时,使用的时候要写类的全路径,写起来太麻烦了,为了简化带包的操作,Java就提供了导包的功能
- 导包的格式
- 格式: import 包名;
- 范例: import cn.ityanger.Teacher
1.3 修饰符
1.3.1 修饰符的分类
- 权限修饰符
- 状态修饰符
1.3.2 权限修饰符
修饰符 | 同一个类中 | 同一个包中子类无关类 | 不同包的子类 | 不同包的无关类 |
---|---|---|---|---|
private | √ | |||
默认 | √ | √ | ||
protected | √ | √ | √ | |
public | √ | √ | √ | √ |
1.3.3 状态修饰符
- final(最终态)
- static(静态)
1.3.4 final
==final==关键字是最终的意思,可以修饰成员方法,成员变量,类
==final==修饰的特点
- 修饰方法: 表明该方法是最终方法,==不能被重写==
- 修饰变量: 表明该变量是常量,==不能再次被赋值==
- 修饰类: 表明该类是最终类,==不能被继承==
1.3.5 final修饰局部变量
- 变量是基本类型: final修饰指的是基本类型的==数据值==不能发生改变
- 变量是引用类型: final修饰指的是引用类型的==地址值==不能发生改变,但是地址里面的内容是可以发生改变的
1.3.6 static
static关键字是静态的意思,可以修饰成员方法,成员变量
static修饰的特点
- 被类的所有对象共享
这也是我们判断是否使用静态关键字的条件
- 可以通过类名调用
当然,也可以通过对象名调用
==推荐使用类名调用==
1.3.7 static访问特点
非静态的成员方法
- 能访问静态的成员变量
- 能访问非静态的成员变量
- 能访问静态的成员方法
- 能访问非静态的成员方法
静态的成员方法
- 能访问静态的成员变量
- 能访问静态的成员方法
==总结成一句话就是: 静态成员方法只能访问静态成员==