面向对象
程序:为了模拟现实世界,解决生活中的问题
对象:既然是为了模拟现实世界,那么现实中有的比如说水桶,那么水桶在计算机中就是一个对象。顺便理解下:万物皆对象。
类
之前不是介绍了类(class),比如:
class Shuitong{
String color="";//水桶肯定会有颜色
double size=0;//水桶肯定会有容积,先设置默认0
//这样就在计算机世界中定义了一个水桶的模板
}
类的定义:
属性: 同变量定义方式,位置在类中,方法的外面;成员变量,实例变量
语法: 数据类型 属性名;
方法: 同函数,不加static
如何使用且创建对象: 基于类名,借助于new关键字创建对象
语法: 类名 对象名 = new 类名();
public class Cxk{
public static void main(String[] args){
//创建一个叫st的水桶(然后可以让这个水桶具有不同的颜色大小)
Shuitong st=new Shuitong();
st.color="red";
st.size=30.0;
//还可以多创建几个不同的水桶就构成水桶世界
}
}
对象的访问:
通过对象名操作对象,包括操作对象的属性和方法,属性包括赋值与取值,方法是调用
① 赋值:对象名.属性名 = 值;
② 取值:对象名.属性名;
③ 调用方法:对象名.方法名();
类与对象的关系:
类:只有一个 ;类中定义了对象应该具备的特征和行为,类是对象的模板;(水桶:应该能装水的一种东西)
对象:可以创建多个 ;对象是具备多个特征和行为的实体,对象是类的实例(比如能够自己创造一个或者多个颜色、大小都不一样的水桶)。
细品:类是对象的模板,对象是类的实例!
局部变量和成员变量:
class Cxk{
int a=1;//成员变量
public void sum(){//方法
int b=1;//局部变量
}
}
成员变量与局部变量的区别:
局部变量 | 成员变量 | |
---|---|---|
定义位置 | 定义在函数(方法)内部 | 类中,方法的外面 |
默认值 | 无默认值,必须先赋值再使用 | 有默认值,同数组 |
作用范围 | 从定义位置开始到定义的代码块结束 | 本类中有效 |
明明冲突 | 在同一个作用范围,不允许两个局部变量重名 | 成员变量可与局部变量重名,以局部变量优先 |