包
包是管理不计其数的java源文件的一种工具,它可以使众多源文件按照某种分类规则放入不同的区域中,使查找文件并维护的必要工作极大地简化,同时,它解决了相同类名冲突的问题,也通过访问控制符保护了类的成员变量和方法。
包名均为小写,各层次使用“.”隔开,一般由域名的倒置开头,且不能以java开头
//com.baidu.tool
若是打开工程文件查看,可发现各层次其实是文件夹。例如com.baidu.tool。baidu文件夹在com文件夹中,tool文件夹在baidu文件夹中,而源文件储存则在tool文件夹下。
JDK中的包
若是在当前类中想要使用其他包中的类、java.lang以外JDK中的类、第三方jar包中的类,就需要引包。
如果不用import关键字进行引包,则需要完整写出该类的位置:
java.util.Scanner scan = new java.util.Scanner(System.in);
为了简化代码,使用import关键字进行引包:
//1:明确指定需要引用的类 import java.util.Scanner; //2:*通配符引用该包下的所有类 import java.util.*; //3:使用 Scanner scan = new Scanner(System.in);
此外不能引用在默认包中的类。
访问控制符
共有四种访问控制符:public、protected、友好的、private。
被修饰的成员变量,成员函数,类根据以下表格决定是否能在其他类中访问。
封装
封装是Java的三大特征之一。用于保护变量中的数据。
在一个类中,可能他的某一个成员变量有一个范围区间,超出这个范围会导致不可控的后果。
Student stu = new Student(); stu.age = 10000;
此例中学生的年龄显然不可能为10000,那么应该如何处理?
private int age; public void setAge(int age){ if(age>0&&age<30){ this.age = age; } }
在Student类中如此定义,即可有效处理此类问题,当需要赋值时调用类中的公共方法setAge()即可,保证了数据的安全。