对于包的知识点:
1.包是用来分别门类的管理各种不同的类,类似于文件夹,建包利于程序的管理和维护
2.建包的语法格式:package公司域名倒写.技术名称,报名建议全部英文小写
3.建包语句必须放在第一行,
导包:
1.相同包下的类可以直接访问,不同包下的类必须导包才可以使用!导包格式:import包名.类名
2.假如一个类中需要用到不同类,而这个两个类的名称是一样的,那么默认只能导入一个类,另一个类要带包名访问
public class Test {
public static void main(String[] args) {
//目标:理解以下两点
//1.同一个包下的类,互相可以直接访问
System.out.println(User.onlineNumber);
//2.不同包下的类,必须导包才可以直接访问
Student s = new Student();
Scanner sc = new Scanner(System.in);
//3.如果这个类中使用不同包下的相同的类名,此时默认只能导入一个类的包,
//另一个类要使用全名访问
com.ithema.di.it2.Student s2 = new com.ithema.di.it2.Student();
}
}
final的作用:
final关键字是最终的意思,可以修饰(类,方法,变量)
修饰类:表示该类是最终类,不能被继承
修饰方法:表示该方法是最终方法,不能被重写
修饰变量:表示该变量第一次赋值后,不能再次被赋值(有且仅有一次能被赋值)
注意:
final修饰的变量是基本类型,那么变量存储的数据值不能发生改变,
final修饰的变量是引用类型:那么变量存储的地址值不能发生改变,但是地址指向的对象内容是可以发生改变的
常量:
常量是使用了public static final 修饰的成员变量,必须有初始化值,而且执行过程中的其值不能别改变
常量的作用和好处:可以用于做系统的配置信息,方便程序的维护,同时也能提高可读性
常量的执行原理:
在编译阶段会进行“宏替换”,把使用常量的地方全部替换成真实的自变量
这样做的好处是让使用变量的程序的执行性能与直接使用字面量是一样的
public class Test {
public static void main(String[] args) {
//目标:记住final的语法
//1.final修饰类,类不能被继承
//2.final修饰方法,方法不能被重写
//3.final修饰变量,变量有且只能赋值一次
}
}
class Student extends People{
@Override
public void eat() {
System.out.println("需要吃饭哎");
}
}
class People {
public void eat(){
System.out.println("吃饭");
}
}
public class Test2 {
/**
*
* 2.修饰静态成员变量(public static final 修饰的也称为常量)
*/
public static final String schoolName = "南理";
public static void main(String[] args) {
// 目标:理解final修饰变量得作用,总规则:变量有且只能赋值一次
//变量有几种:
//1.局部变量
//2.成员变量
// --实例成员变量
// --静态成员变量
//1.局部变量
final double rate = 3.14;
//rate = 3.19//第二次赋值
bu(1.6);
//schoolName = "54";//第二次赋值
}
public static void bu(double z){//z从上面传下来进行了第一次的赋值
//z = 0.1;//第二次赋值
}
}
枚举的知识点概括
枚举是Java中的一种特殊类型
枚举的作用:是为了做信息的标志和信息的分类
定义枚举类的格式:
修饰符enum枚举名称{
第一行都是罗列枚举类实例的名称
}
enum Season{
SPRING, SUMMER,AUTUMN,WINTER;
}
枚举的特征:
枚举类都是继承了枚举类型:Java.lang.Enum
枚举都是最终类,不能被继承
构造器的构造器都是私有的,枚举对外不能创建对象
枚举类的第一行默认都是罗列枚举对象的名称的
枚举类相当于多例模式