面向对象Object
面向对象是一种思想
使用计算机语言对事物的描述与现实世界中该事物的原本尽量一致
类Class
class 类名称{
属性名称;
返回值类型 方法名称(){}
}
类名称 对象名称= new 类名称();
对象名称.属性 //访问类中的属性
对象名称.方法() // 调用类中的方法
使用一个没有实例化的对象,会抛出java.lang.NullPointerException(空指针异常)
对象的内存分析
当new一个对象的时候,会在栈内存中存储该对象的名称
给对象的属性赋值时,会在堆内存中开辟存储空间,栈中的对象名会指向堆内存中的首地址
封装
将程序实现的内部细节进行隐藏,使用者无需知道具体的内容
在属性名、方法名前使用控制符符来进行封装
public 公共访问修饰符
private 私有访问控制符
protect 保护访问控制符
重载(overloading)
方法的重载是实现“多态”的一种方法
在同一个类内具有相同名称的多个方法,如果这些同名的方法的
参数个数不同
参数类型不同
参数的顺序不同
这些同名的方法具有不同的功能
构造方法
在对象被创建时初始化对象的成员的方法
构造方法的名称必须与它所在的类名完全相同
构造方法没有返回值
构造方法名前不能使用修饰符void
在创建对象时自动调用,在对象产生时自动执行,不需要在程序中直接调用
如果省略,java编译器会自动为该类生成一个默认的构造方法(default constructor)
在某个构造方法中调用另一个构造方法时,必须使用this关键字
this关键字必须写在构造方法内的第一行位置