面向对象简介
它的基本思想是使用类,对象,继承,封装,消息等进行程序设计。它从现实世界中客观存在的事物出发来构造软件系统,在系统构造中尽可能的运用人类的自然思维方式,强调直接以现实世界中的事物为中心来思考问题,认识问题。并根据这些事物的本质特点,把他们抽象地表示为系统中的类,作为系统的基本构成单元,使得软件系统的组件可以直接映射现实世界,并保持客观世界事务及其相互关系的本来面貌。
类
面向对象程序设计中,其最小的程序单元是类,类可以生成系统中的多个对象。而这些对象直接映射成客观世界的各种事物。
类的语法:
[访问权限修饰符] class 类名{
成员变量
成员方法
}
1.访问权限修饰词:
在一个.java源文件里定义的普通类,修饰词只能是public或者默认的
2.类名:
使用大驼峰命名法
3.成员变量:
用来描述对象的共同特征,也就是状态数据
格式,即变量的声明
4. 成员方法:
用来描述对象的共同的行为, 或者用来操作状态数据
指的都是不带static修饰的方法
class Animal {
// 描述一个动物的共同特征
String name;
int age;
// 描述一个动物的行为
void eat() {}
void sleep() {}
void noise() {}
}
对象
类是对象的抽象,对象是类的具体。
类定义完成后,可以使用new关键字创建对象。 创建对象的过程通常称之为实例化。
语法:
new 类名();
如果想要访问实例化出来的对象,通常都会使用变量来接收一下该对象。即如下格式:
类名 变量名 = new 类名();
成员访问
成员访问,指的就是如何使用类里的成员变量,方法。
语法:
引用变量.成员变量
引用变量.成员方法
静态和非静态
1. static修饰的属性,叫做静态属性; static修饰的方法,叫做静态方法
2. 没有static修饰的属性,叫非静态属性,也叫成员变量;没有static修饰的方法,叫非静态方法,也叫成员方法
static修饰的属性和方法,都是属于类的,需要使用类名调用。
非static修饰的属性和方法,是属于对象的,通常使用引用变量来调用。
静态方法中,只能直接访问本类中的静态成员。不能访问非静态成员
非静态方法中,可以访问本类中的非静态成员和静态成员
this关键字
在一个类的成员方法中,使用this代表当前对象;
因为实例方法需要使用对象调用,哪个对象调用这个方法, this就是谁。
this.是隐藏在成员方法里的成员变量前面的关键字
当形式参数的名字与成员变量的名字相同时,如果想要在这个作用域内表示成员变量,那么this.不能省略。
public class Cat {
String name;
String color;
public void setInfo(String a, String b){
this.name = a;
this.color = b;
}
}