package //包名
import 包名.*/包名.类名;
//声明和定义类
[ 类修饰符 ] class 类名 [ extends 父类名 ] [ implements 接口名称列表 ] {
[ 访问控制符 ] [ static] [ final ] < 数据类型 > 变量名或常量名;
}
- 在一个java文件中可以包含多个类,但最多只能有一个公共类(即public class,也可以没有)。
- 如果存在public class的话,该类的类名应该和包名保持一致。
- main方法是java应用程序的入口文件,如果文档中存在public class和main方法则main方法必须位于public class中。
package Controller;
public class ClassExercise {
private boolean seedless;
private boolean seasonal;
private float price;
public void setPrioperties(boolean seeb,boolean season,float cost){
seedless = seeb;
seasonal = season;
price = cost;
};
public void printProperties(){
if(seedless){
System.out.println("Friut is seedless");
}else{
System.out.println("Friut is seedes");
}
if(seasonal){
System.out.println("Friut is seasonal");
}else{
System.out.println("Friut is not seasonal");
}
System.out.println("Price is " + price);
};
public static void main(String[] ages){
boolean myseed, myseason;
float mycost;
myseed = false;
myseason = true;
mycost = 25.86F;
ClassExercise myclass = new ClassExercise();
myclass.setPrioperties(myseed,myseason,mycost);
myclass.printProperties();
};
}
类修饰符
- 类的修饰符有public , abstract和final。如果没有声明这些类修饰符,java编译器默认该类为friendly类,对于这些类,只有同一个包中的类可以访问。
(1),public(公共类)
带有public修饰符的类称为公共类,公共类可以被任意包中的类访问。不过要在一个类中使用其他包中的类,必须在程序中增加import语句,
package Controller;
import Controller.ClassExercise;
public class Prantclass {
public static void main(String[] args) {
boolean myseed, myseason;
float mycost;
myseed = false;
myseason = true;
mycost = 25.86F;
ClassExercise myclass = new ClassExercise();
myclass.setPrioperties(myseed,myseason,mycost);
myclass.printProperties();
}
}
(2) abstranct (抽象的)
带有abstranct修饰符的类称为抽象类,相当于类的抽象,一个抽象类可以包含抽象方法,而抽象方法是没有方法体的方法,所以抽象方法不具备具体功能,只用于衍生出子类,因此抽象类不能被实例化。
(3) final (最终的)
带有final修饰符的类称为最终类,不能通过扩展最终类来创建新类,也就是说他不能被继承,或者说他不能派生子类。
- 说明一下类的所有实现接口
implements 关键字用来告诉编译器类实现的接口,一个类可以实现多个接口,多个接口之间用逗号分隔,其形式为:implements interfacel,interfacel2,...;
使用接口的主要目的是为了史程序的功能描述和功能的具体实现相分离,从而使程序结构更清晰,此外, 由于Java中不支持一个类有多个直接的父类(称为多继承),而支持继承多个接口,因此接口还用来实现多继承。
类型 | private | protected | public | 默认 |
---|---|---|---|---|
所属类 | 可访问 | 可访问 | 可访问 | 可访问 |
同一个包中的其他类 | 不可访问 | 可访问 | 可访问 | 可访问 |
同一个包中的子类 | 不可访问 | 可访问 | 可访问 | 可访问 |
不同包中的子类 | 不可访问 | 可访问 | 可访问 | 不可访问 |
不同包中的非子类 | 不可访问 | 不可访问 | 可访问 | 不可访问 |