在面向对象中,类和对象是最基本,最重要的组成单元。类实际上是表示一个客观世界某类群体的一些基本特性的抽象。对象就是一个个具体的东西。
比如:在实际生活中,动物就可以看作一个类,动物就是一个抽象的概念。老虎,狮子,狗和猫等等都可以作为对象。可以通过各种信息完善的描述这些动物,比如这个动物的颜色,年龄,公母等等。这些信息在面向对象中的概念就是属性。当然这些动物还会觅食,奔跑,这些就称为方法。对象是由类产生的,相同的类之间的区分是靠对象中的属性来区分,对象所具备的操作就是类中规定好的方法。
如果一个类被声明为 public class,则文件名称必须要与类名称一致。在一个类文件中,就只能有一个 public class。如果使用 class 声明一个类,则文件名可以和类名不一致,但是文件最后编译后肯定会生成一个 class 与类名称一样的文件名称。类文件名称一般以大写字母开头。
class 类名称{
数据类型 属性名称;
数据类型 属性名称2;
public 返回值类型 方法名(参数1,参数2...){
//do somethoing
}
}
参数 | 描述 |
---|---|
class | 定义类用到的关键字 |
类名称 | 这个类的名称,方便定义对象和别人使用 |
数据类型 | 定义属性的数据类型,比如 int,double,String等等 |
public | 函数的权限,表示控制谁可以访问这个方法 |
返回类型 | 方法执行后返回的对象类型 |
方法名称 | 定义一个方法名称,别人可以用这个名称做这个方法里面的事情 |
参数 | 调用方法时候传递的参数 |
类里面包含属性和方法,属性就是我们对一个类的描述,比如动物里面有颜色,公母等等。方法是这个类能够做哪些事情,比如老虎可以捕猎物,猴子可以爬树等等。它和我们之前介绍过的 方法 一个用法。
我们可以创建一个动物类。
package com.haicoder.net.clas;
public class Animal {
String clolr;//颜色
int age; //年龄
String animalName;
public void eat(String foodName){
System.out.println("动物名字 + " + animalName); //打印出动物的名字,方法里面的具体操作
}
}
我们可以看到上面的类的定义过程和我们语法里面的一样,定义了一个动物类,它里面包含了吃的方法还包含了一些属性。
类名 对象名称 = null; //定义一个对象
对象名称 = new 类名(); //实例化对象
类名 对象名称 = new 类名();//创建并实例化对象
参数 | 描述 |
---|---|
类名 | 我们上面讲的类的名称 |
对象名称 | 为类创建一个对象时的名称,方便别人调用 |
new | 类创建对象时候的关键字,后面根的类名称,调用类的一个构造方法 |
创建一个类的对象的时候,需要用到关键字 new。每个对象也有自己的名字,这样就可以供别人访问。创建一个类的对象的时候,就是调用这个类对应的 构造方法。
package com.haicoder.net.clas;
public class AnimalTest {
public static void main(String[] args) {
Animal animal = new Animal();
}
}
在上面的讲解中,我们定义了一个 Animal 类,在这个类中,我们定义了一个 animal 对象。具体的目录结构如下:
Java 语言中,定义类和对象都需要有自己的名字,这样给别人使用的时候,比较方便。定义对象要使用 new 关键字。