什么是类?
类就是具备某些共同特征的实体的集合,它是一种抽象的数据类型,它是对所具有相同特征实体的抽象。在面向对象的程序设计语言中,类是对一类“事物”的属性与行为的抽象。
什么是对象?
对象就是一个真实世界中的实体,对象与实体是一一对应关系的,意思就是现实世界的每一个实体都是一个对象,所以对象是一个具体的概念。
看了概念似乎看不懂他们是什么,没关系,我们用简单的例子去理解:
如果狗为一个类,那么小狗就是他的一个对象,当然大狗也是,还有“单身狗”。由这个例子,就应该明白这句话了:类是对象的一个集合,对象是类的实例。
而对象的产生在java中是使用new来实现的。
public class Dog {
String name; //姓名
int age; //年龄
String sex; //性别
public static void main(String args[]) {
Dog dog1 = new Dog();
dog1.name = "Tom";
dog1.age = 3;
dog1.sex = "male";//公
System.out.println(dog1.name);
}
}
其中,Dog为类,dog1为我们new的对象,当然我们也可以new其他的一些对象dog2等等。
顺便说一下:
在上述代码中,姓名,年龄,性别属于成员变量,成员变量是定义在类中,方法体之外的变量。这种变量是在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
当然,在一个类中不止有成员变量,还可以包含局部变量和类变量:
局部变量:在方法、构造方法或者语句块中定义的变量称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
类变量:类变量和成员变量一样,也声明在类中,方法体之外。但必须声明为static类型,即静态变量,为所有对象所共有。
用一个简单的代码具体表述一下就是:
public class Dog {
String name; //姓名 }
int age; //年龄 }成员变量
String sex; //性别 }
static String sname; //类变量(静态变量)
public static void main(String args[]) {
Dog dog1 = new Dog();
Dog dog2 = new Dog();
dog1.name = "哈士奇";
dog1.age = 3;
dog1.sex = "male";//公
dog2.name = "藏獒";
System.out.println(dog1.name);
}
void speak() {
String s = "汪汪"; //局部变量
System.out.println(s);
}
void hungry() {
System.out.println("汪汪汪汪汪......");
}
}
一个类中可以有多个方法,例如上述代码中的sperk(),hungry()都是Dog类中的方法,你可以将java中的方法理解为C中的函数,当然一个文件中也可以有多个类,但是只能有一个被public修饰的类。