JavaSE之包,权限修饰符,内部类
包的概述
1,什么是包?
Java中的包,就相当于电脑中的文件夹。
2,包的声明格式
package 包名. 包名. 包名. .;
如:package cn.sxflow.test;
3,包与包之间的互相访问
导包的格式,import 包名.类名
例如:
package cn.sxflow.test02;
//被导入的包
public class Test02 {
public void show() {
System.out.println("我是被导入的包中的一个类");
}
}
package cn.sxflow.test01;
//将包导入
import cn.sxflow.test02.Test02;
public class Testo1 {
public static void main(String[] args) {
Test02 test = new Test02();
test.show();
}
}
权限修饰符概述
Java中提供了四种访问权限,public,protected,
default,private
其中:
public 的范围最大,所有的包,所有的类都可以访问;注意:一个文件中只允许有一个public修饰的类
protected 本包中的任意类和本包在其他包中的子类均可以访问;
default ,默认修饰符,在本包范围内可以随便访问;
private的范围最小,唯有本类可以访问;值得注意的是,如果一个类的构造方法被private修饰,这个类将不可以创造对象。
内部类
1,什么是内部类?
将类写在其他类的内部,如成员位置,局部变量位置等。
2,内部类的使用情况
描述一个对象的时候,这个事物内部还包含其他的事物。
如:
class Person{//外部类 class School{//内部类 } }
3,成员内部类
定义在外部类中的成员位置。
访问方式: 外部类名.内部类名 变量名 = new 外部类名().new 内部类名();
4,局部内部类
定义在外部类方法中的局部位置,与访问方法中的的局部变量相似,可通过调用方法进行访问。如:
public class Test01 {
public static void main(String[] args) {
Person p = new Person();
p.test();
}
}
class Person {// 外部类
public void test() {
System.out.println("展示学校前");
class School {// 内部类
void show() {
System.out.println("这是我的学校,大同大学");
}
}
School school = new School();
school.show();
System.out.println("展示学校后");
}
}
5,匿名内部类
创建每个类型子类对象的快捷方式,一般用于只使用一次的类;
格式:new 父类或者接口名(){ //对父类方法进行重写};
举例:
//接口
interface Person{
void show();
}
public class Test01 {
public static void main(String[] args) {
Person person = new Person(){
@Override
//匿名内部类
public void show() {
System.out.println("这是我的学校,山西大同大学!");
}
};
person.show();
}
}
上一篇: HTTPS之PKIX SunCertPathBuilderException: unable to find valid certification path to requested target
下一篇: 安卓用户注意:这几类APP最爱窃取隐私
推荐阅读