JAVA的对象,类,方法以及包的具体含义
我觉得入门JAVA要先搞清楚一些主要的名词概念,JAVA 与C++很像,在类,对象和方法的概念上非常类似
- 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
- 类:类是一个模板,它描述一类对象的行为和状态。
- 方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
但是对于实例变量上的理解,还是需要一些时间
- 实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
class FreshJuice {
//定义一个枚举类型FreshJuiceSize,
enum FreshJuiceSize{ SMALL, MEDIUM , LARGE }
//size是FreshJuiceSize的实例变量
FreshJuiceSize size;
}
通过上面的代码我们能够更好地理解实例变量。
JAVA 包
包主要用来对类和接口进行分类。当开发 Java 程序时,可能编写成百上千的类,因此很有必要对类和接口进行分类。
import语句
在 Java 中,如果给出一个完整的限定名,包括包名、类名,那么 Java 编译器就可以很容易地定位到源代码或者类。import 语句就是用来提供一个合理的路径,使得编译器可以找到某个类。
例如,下面的命令行将会命令编译器载入 java_installation/java/io 路径下的所有类
import java.io.*;
我们用代码阐述一个例子,分别建立Dog.java,和DogTest.java.
import java.io.*;
public class Dog {
String name;
String color;
int age;
public Dog(String name){
this.name=name;
}
public void colorDog(String colorDog){
color=colorDog;
}
public void ageDog(int ageDog){
age=ageDog;
}
public void printDog(){
System.out.println("狗狗的名字"+name);
System.out.println("狗狗的颜色"+color);
System.out.println("狗狗的年龄"+age);
}
}
接下来是DogTest.java,在该文件中应用了Dog.java中规定的类,于此我们看出import的用法与作用
import java.io.*;
public class DogTest {
Dog dog1=new Dog("栋栋");
Dog dog2=new Dog("宝宝");
dog1.colorDog("黑");
dog2.colorDog("白");
dog1.printDog();
dog2.printDog();
}
类的继承
在 Java 中,一个类可以由其他类派生。如果你要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。
利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类称为超类(super class),派生类称为子类(sub class)。
在以后的博客中,我们会写一段代码来进行阐释这段话的意思
接下来我们重点阐释一个类可以包含以下类型变量:
- 局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
- 成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
- 类变量:类变量也声明在类中,方法体之外,但必须声明为 static 类型。
我们写一段代码来解释上面的变量类型
public class Fruit {
//这个是我们的类的构造函数,使用 new 创建对象时,
// 会调用构造方法初始化对象,所以会出现字符串的打印。
public Fruit(String kind){
//构造函数中输出字符串
System.out.println("栋栋爱吃"+kind);
}
//
public static void main(String[] args){
//声明对象 ,并使用关键字NEW来实例化
Fruit MyFruit= new Fruit("shit");
}
}