学习笔记:java的对象基础
面向对象与面向过程
面向对象(OOP)与面向过程(POP)
二者都是一种思想,面向对象是相对于面向过程而言的。面向过程,强调的是功能行为。面向对象,将功能封装进对象,强调具备了功能的对象。
面向对象更加强调运用人类在日常的思维逻辑中采用的思想方法与原则,如抽象、分类、继承、聚合、多态等。
面向对象的三大特征
封装 (Encapsulation)
继承 (Inheritance)
多态 (Polymorphism)
类的成员之一:属性
语法格式:
修饰符 类型 属性名 =初值 ;
说明修饰符private:该属性只能由该类的方法访问。
修饰符public:该属性可以被该类以外的方法访问。
类型:任何基本类型,如int、boolean或任何类。
举例:
public class Person{
private int age; //声明private变量 age
public String name = “Lila”; //声明public变量 name
}
成员变量:
成员变量定义在类中,在整个类中都可以被访问。
成员变量分为类成员变量和实例成员变量,实例变量存在于对象所在的堆内存中。
成员变量有默认初始化值。
成员变量的权限修饰符可以根据需要,选择任意一个
局部变量:
局部变量只定义在局部范围内,如:方法内,代码块内等。
局部变量存在于栈内存中。
作用的范围结束,变量空间会自动释放。
局部变量没有默认初始化值,每次必须显式初始化。
局部变量声明时不指定权限修饰符
类的成员之二:方 法
修饰符 返回值类型 方法名 ( 参数列表) {
方法体语句;
}
什么是方法(函数)?
方法是类或对象行为特征的抽象,也称为函数。
Java里的方法不能独立存在,所有的方法必须定义在类里。
修饰符 返回值类型 方法名(参数类型 形参1,参数类型 形参2,….){
程序代码
return 返回值;
}
其中:
形式参数:在方法被调用时用于接收外部传入的数据的变量。
参数类型:就是该形式参数的数据类型。
返回值:方法在执行完毕后返还给调用它的程序的数据。
返回值类型:方法要返回的结果的数据类型。
实参:调用方法时实际传给函数形式参数的数据。
如何理解方法返回值类型为void的情况 ?
void: 空的意思, 不能用来定义变量,只能用来作为返回值类型使用
注意点:
- 不能定义变量来接收
- 不能直接放在输出语句中
对象
当一个对象被创建时,会对其中各种类型的成员变量自动进行初始化赋值。除 了基本数据类型之外的变量类型都是引用类型,如上面的Person及前面讲过的数组。
成员变量类型 | 初始值 |
---|---|
byte | 0 |
short | 0 |
int | 0 |
long | 0L |
float | 0.0F |
double | 0.0D |
char | ‘\u0000’(表示为空) |
boolean | false |
引用类型 | null |
Java权限修饰符public、protected、private置于类的成员定义前,用来限定对象对该类成员的访问权限。
修饰符 | 类内部 | 同一个包 | 子类 | 全部地区 |
---|---|---|---|---|
private | Yes | |||
(缺省) | Yes | Yes | ||
protected | Yes | Yes | Yes | |
public | Yes | Yes | Yes | Yes |
类的成员之三:构造器(构造方法)
如:Order o = new Order(); Person p = new Person(Peter,15);
如同我们规定每个“人”一出生就必须先洗澡,我们就可以在“人”的构造方法中加入完成“洗澡”的程序代码,于是每个“人”一出生就会自动完成“洗澡”,程序就不必再在每个人刚出生时一个一个地告诉他们要“洗澡”了。