面向对象--------package,import(二十六)
一.package关键字的概述及作用
* A:为什么要有包
* 将字节码(.class)进行分类存放
* 包其实就是文件夹
示例 :www.xxx.com ------->com.xxx.
* B:包的概述
举例:
学生:增加,删除,修改,查询
老师:增加,删除,修改,查询
方案1:按照功能分
com.xxx.add
AddStudent
AddTeacher
com.xxx.delete
DeleteStudent
DeleteTeacher
com.xxx.update
UpdateStudent
UpdateTeacher
com.xxx.find
FindStudent
FindTeacher
方案2:按照模块分
com.xxx.teacher
AddTeacher
DeleteTeacher
UpdateTeacher
FindTeacher
com.xxx.student
AddStudent
DeleteStudent
UpdateStudent
FindStudent
二.包的定义及注意事项
A:定义包的格式
* package 包名;
* 多级包用.分开即可
B:定义包的注意事项
* A:package语句必须是程序的第一条可执行的代码
* B:package语句在一个java文件中只能有一个
* C:如果没有package,默认表示无包名
三.带包的类编译和运行
如何编译运行带包的类
* a:javac编译的时候带上-d即可
* javac -d . HelloWorld.java
* b:通过java命令执行。
* java 包名.HellWord
四.不同包下类之间的访问
五.import关键字的概述和使用
A为什么要有import
* 其实就是让有包的类对调用者可见,不用写全类名了
B:导包格式
* import 包名;
* 注意:
* 这种方式导入是到类的名称。
* 虽然可以最后写*,但是不建议。
* C:package,import,class有没有顺序关系(面试题)
有. package放在程序的第一条可执行语句. import放在package和class的中间,导入几个类,就写几个import class在最下边. |
package com.baidu;
public class Person {
private String name;
private int age;
public Person(){}
public Person(String name,int age) {
this.name = name;
this.age = age;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
protected void print() {
System.out.println("print");
}
}
package com.xxx;
import com.baidu.Person;
public class Student extends Person {
public Student(){}
public Student(String name,int age) {
super(name,age);
}
public void method() {
print();
}
}