1 面向对象
自己现在的理解:面向对象是一种设计思想,是基于面向过程产生的。面向过程强调的是功能,行为。面向对象是将功能封装进对象,强调具备了功能的对象。能让复杂问题简单化,程序员不需要了解具体的实现过程,只需要指挥对象去实现功能。
2 类和对象
类是描述某些具有相同特性(属性)与行为(方法)}事物集合的一个抽象概念,它不是一个客观存在的东西,它就是一个模板。
对象是一个具体存在的事物。
类可以定义对象
简单说:类是对象的模板,对象是类的实例。
类的抽取过程是从众多对象中提取出相似特征和动作进行封装的,不是凭空捏造的,比如:
小明是一个学生,小花是一个学生,经过我们从这一个个对象中我们发现他们都有相同的属性和行为,
这个时候就可以使用学生类进行承载。思考的过程是先有对象再有类,使用的时候现有类再创建对象。
需要强调一点:每个对象都拥有相同的方法,但各自的数据可能不同。
示例:描述汽车
package com.vnb.javabase;
public class Car {
//描述颜色
String color="red";
//描述轮胎数
int num = 4;
//运行行为
void run(){
System.out.println("color:"+color+"; 轮胎数:"+num);
}
}
class CarDemo{
public static void main(String[] args) {
//生产汽车。在java中通过new操作符来完成,其实就是在堆内存中产生一个实体
//car引用型变量(句柄),car就是一个类类型变量。类类型变量指向对象(该类产生的实体)
//堆内存中有默认初始化值(color=null);而"red"称为显示初始化值;
Car car = new Car();
//需求:将已有车的颜色改为蓝色,指挥该对象做使用。在java中指挥方式是,对象.对象成员
car.color="blue";
//让车行驶起来
car.run();
}
}
3 引用传递
所谓引用传递就是每一块堆内存空间,可以同时被多个栈内存空间所指向