目录
一、类与对象概念
1、对象的属性和功能
2、类和对象有什么区别?
二、 面向对象的编程
1、类声明和类体
2、类声明
三、类的定义示例
1、类体的构成
四、对象的定义
1、对象的实例化和初始化
2、对象的销毁
3、对象的属性
五.jav中final的变量的说明
好啦 文章内容到这里就结束了 你学到了吗
觉得有用的记得关注点赞加收藏哦~
我们可以把图片里的风景,人和车,理解成对象
还可以分类
类是抽象的概念,而对象是具体的每一个实物。 每个对象都有自己的属性和功能。如下图:
对象的特征——属性
- 属性——对象具有的各种特征(名词、形容词、副词)
- 每个对象的每个属性都拥有特定值
- 例如:奥巴马和白娘子的性别不一样
对象的行为——功能
功能——对象具有的各种行为(动词)
每个对象都有自己的行为
例如:奥巴马会打豆豆,而白娘子会谈恋爱
类是抽象的概念,仅仅是模板,比如说:“人类”
对象是一个你能够看得到、摸得着的具体实体,比如:“薛之谦”。
面向对象—针对具体的对象
- 是把构成问题的事务分解成各个对象
- 建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为和特性
- 无序性是关键
面向对象编程
- 是Java的核心编程思想,其它语言也有,如 C#
面向对象编程的三个重要的原则
- 封装
- 继承
- 多态性
攒机过程类似面向对象编程
- 配件就是对象,先装哪个配件没有严格固定的顺序
- 每个配件都封装好了,无需你自己设计
类是Java程序的核心,它定义了对象的功能和属性,可以用类来创建对象。当使用一个类创建了一个对象时,通常说给出了这个类的一个实例。
类由类声明和类体构成,它的基本格式如下:
class className
{
//body
}
class是声明类的关键字,每个字母都小写。“class ClassName”是类的声明部分,“ClassName”需符合Java声明类名的标准规范,即每个单词的第一个字母需要大写 {}”以及之间的内容称为类体。
Java的类声明是创建类时必须对类的一些性质进行描述。包括类名、类的父类、类所实现的接口及类的修饰符。它的一般格式为:
1.[public][abstract|final] class ClassName [extends superclassName]
2.[implements interfaceNameList]
关键字class前面是可选修饰符的,其中:
1.public:访问权修饰词,允许所有的类访问它,如果某个类以public做修饰词,那么这个类的类名必须和Java文件名(*.java)相同。
2.abstract:对父类的修饰词,当这个类声明为抽象类时,该类就不能被实例化。
3.final:对子类的修饰词,当这个类被声明为最终类时,它不能再有子类。 如果这个类上面还有父类,那么就需要用到extends修饰词,在之后跟父类名。如果要实现某个接口,就需要用到implements修饰词,后面跟接口名。
定义一个求圆面积的类:
public class Circle {
private double radius;
private double area;
final double PI=3.14;
public void setRadius(double r) {
radius=r;
}
public double getArea( ) {
return PI*radius*radius;
}
}
紧跟在类名后面的大括号以及大括号之间的内容称之为类体。
我们在程序中写类的目的就是为描述一类事物共有的属性和功能。
类体将完成对数据及对数据的操作进行封装。
类体内容由两种类型构成:
- 成员变量: 通过变量声明定义的变量,称之为成员变量或域,它用来描述类创建的对象的属性。
- 方法: 类体主要由方法构成。方法可分为构造方法和普通方法。其中构造方法具有重要地位,它供类创建对象时使用,用来给出类所创建的对象的初始状态。普通方法可以由类所创建的对象调用,对象调用这些方法操作成员变量形成一定的算法,体现了对象具有某种功能。
一个类的示例:
class Car{
int speed; //定义变量
double high;
double width;
public Car(){ //构造方法
}
int getSpeed(){
return speed;
}
double getHigh(){//定义方法
return high;
}
double getWidth(){
return width;
}
}
类是抽象,而对象是具体。
- 在Java的编程应用中,其实就是对具体的对象进行操作。也就是说,以类作为一个模板,创建一个对象作为类的一个具体实例。Object类是所有类的父类。
对象的创建
- 创建对象的过程就是实例化类的过程:充分运用类的模板特性,用类来生产出它的实例。可以将类比作对象的创建工厂。
- 创建对象时,需要做三件事:对象的声明、对象的实例化及对象的初始化。下面分别来给大家讲解。
对象声明的一般格式如下: 类的名字 对象名字;
例如:
存在一个类:
class People{
String name;
int age;
}
然后即可声明该类的对象:
People galen;
这里,People是类的名字,galen是我们声明的对象的名字。需要注意的是,类名必须是Java编译器能找到的,也就是说必须存在该类。用类声明的数据称为类类型变量,即为对象,如People类声明的galen对象。
使用new运算符可以实例化一个已经声明的对象,并按照对象的类型给它分配内存。
通常用new运算符实例化一个对象时,会同时调用类的构造方法对它进行初始化。
如果该类中没有写构造方法,系统会调用默认的构造方法,默认的构造方法是不带参数的。
例如,实例化上面已经声明的galen对象:
galen=new People();
- 一个对象被创建后,就可以来使用该对象。
- 使用对象可分为使用对象的变量和调用对象的方法。
使用对象的变量
对象被创建后,就有了自己的变量,即对象的实体。通过使用运算符“.”,对象可以实现对自己的变量的访问。
使用的格式如下:
对象名.变量名 例如People类的对象galen,就可以使用:galen.name,来访问变量名name。
- 对象使用完毕后,就应该销毁对象,再由Java的垃圾回收器收集并释放该对象所占用的内存空间。
- 销毁一个对象,只需将该对象赋值为null就可以了。
- 垃圾回收是一种 java 虚拟机处理程序运行结果的一种机制。 通常,无需编码处理销毁问题,虚拟机会自动完成。
成员变量
- 用来刻画类创建的对象的属性,其中一部分成员变量称为实例变量,另一部分称为静态变量或类变量。
- 如果一个成员变量的修饰词为final,这个变量就称为常量。
类变量和实例变量
- 类变量和实例变量是很容易区分的。类变量就是以关键字static为修饰词的成员变量,而不用static修饰词的成员变量就叫实例变量。例如:
class Student{ int num;//学号 String name;//姓名 static int c; }
- final变量就是我们常说的常量
- 按照Java的命名规范,常量的名字的所有字母都应该大写
- final变量是不占用内存的,所以在声明final变量时,必须初始化
- final变量不同于类变量和实例变量,对象虽然可以使用它,但是不能对它进行更改操作