Java作为面向对象的语言。支持以下概念:
本节研究对象和类。
下图中男孩、女孩是类,而具体的每个人是该类的对象。
通过上图创建一个简单的类来理解Java中类的定义:
public class Dog{ String breed; int size; String colour; int age; void eat(){ } void run(){ } void sleep(){ } void name(){ } }
一个类可以包含以下类变量:
一个类可以有多个方法。
每个类都有构造方法。如果没有显式地为类构造方法,Java编译器将会为该类提供一个默认构造方法。
在创建一个对象的时候,至少调用一个构造方法。构造方法的名称必须与类同名,一个类可以有多个构造方法。
public class Puppy{ public Puppy(){ } public Puppy(String name){ // 这个构造器只有一个参数:name } }
对象是类创建的。用关键字new来创建对象。
public class Puppy{ public Puppy(String name){ // 这个构造器仅有一个参数:name System.out.println("小狗的名字是:" + name); } public static void main(String[] args){ Puppy myPuppy = new Puppy("tommy"); } }
编译、运行:
小狗的名字是 : tommy
通过已创建的对象来访问成员变量和成员方法,如下所示:
/* 实例化对象 */ Object referenceVariable = new Constructor(); /* 访问类中的变量 */ referenceVariable.variableName; /* 访问类中的方法 */ referenceVariable.methodName();
当在一个源文件中定义多个类,并且还有import语句和package语句时,特别注意这些规则。
类有若干种访问级别,并且类也分不同的类型:抽象类和final类等。
除了上面几种,还有特殊的类。如:内部类、匿名类。
包主要用来对类和接口进行分类。
在Java中,如果给出一个完整的限定名,包括包名、类名,那么Java编译器很容易定位到源代码或者类。
例如:载入 java_installation/java.io路径下的所有类
import java.io.*