这是一个目录
- 面向对象
- 类和对象
- 类
- 对象
- 类的定义
- 一个对象的内存
- 成员变量和局部变量
- 定义位置不同
- 作用范围不同
- 默认值不同
- 内存位置不同
- 生命周期不同
- 关键字
- this关键字
- 构造方法
- 标准的类
面向对象
当需要实现一个功能的时候,不关心具体的步骤,而是找一个具有该功能的人帮忙做事,强调对象;
面向过程则强调过程
System.out.printnln(Arrays.toString(array));
三大特性:封装、继承和多态
类和对象
类
一组关于属性和行为的集合,可以看出一类事物的模板,使用事物的属性特征和行为特征来描述该类市区
属性:事物的状态信息
行为:该事物能做什么
对象
类是对一类事物的描述,是抽象的;
对象是一类事物的实例,是具体的;
类是对象的模板,对象是类的实体
类的定义
成员变量
成员方法
public class Student{
//成员变量
String name;//姓名
int age;//年龄
//成员方法没有static
public void eat(){//吃饭
System.out.println("吃饭");
}
public void sleep(){
System.out.println("睡觉");
}
public void study(){
System.out.println("学习");
}
}
一个类不能直接使用,需要根据类创建一个对象,才能使用
导包、创建、使用
import Student//类的位置
//创建
//类名称 对象名 = new 类名称()
public class DemoStudent{
//使用:对象名.成员变量名
//对象名.成员方法名(参数)
public static void main(String[] args){
//创建对象(根据Student类)
Student stu = new Student();
System.out.println(stu.name);
System.out.println(stu.age);
//成员变量不赋值,有默认值,规则和数组一样
stu.name = "赵";
stu.age = 23;
System.out.println(stu.name);
System.out.println(stu.age);
//使用成员方法
stu.eat();
stu.sleep();
stu.study();
}
}
一个对象的内存
成员变量和局部变量
定义位置不同
成员变量:在方法外部,直接写在类中
局部变量:在方法内部
作用范围不同
成员变量:整个类通用
局部变量:只有方法中才可以使用
默认值不同
成员变量:没有赋值的话会有默认值,规则和数组一样
局部变量:没有默认值,使用需先进行赋值
内存位置不同
成员变量:位于堆内存
局部变量:位于栈内存
生命周期不同
成员变量:随对象创建而生,随对象被垃圾回收而消失
局部变量:随方法进栈而诞生,方法出栈消失
关键字
private修饰,超出本类不能直接访问,提高代码的安全性
基本数据类型的布尔型,Getter方法要写成isXXX,set方法不变
this关键字
通过谁调用的方法,谁就是this
构造方法
构造方法是专门用来创建对象的方法,当通过关键字new来创建时,就是调用构造方法。
格式:public 类名称(参数类型 参数名称)
注意事项
1、构造方法的名称必须和所在类名称完全一样,就连大小写也要一样
2、构造方法不要写返回值,void都不写
3、不能return一个具体的返回值
4、如果没有编写构造方法,编译器会默认一个构造方法,没有参数、方法
5、构造方法也可以重载
标准的类
Java Bean四个组成部分
1、所有成员变量都要使用private关键字修饰
2、为每个成员变量编写一对Getter/Setter方法
3、编写一个无参数的构造方法
4、编写一个全参数的构造方法