loading...
面向对象程序设计
Published in:2022-01-31 | category: JavaSE基础知识
Words: 937 | Reading time: 3min | reading:

面向过程

​步骤去考虑事物的发展

面向对象

​先考虑事物中存在哪些对象

​在建立对象与对象的关系

对象

  • 面向对象思想

    • 一切客观存在的事物都是对象,万物皆对象
    • 任何对象,一定具有自己的特征和行为
  • 静态:属性、变量、成员变量、实例变量

  • 动态:方法、函数、成员方法、实例方法

对象的创建方法

​类名 对象名 = new 类名

对象调用属性

​对象名.属性名

对象给属性赋值

​对象名.属性名 = 值;

对象调用方法

​对象名.方法名(实参列表)

​ 多个对象抽取其共同点形成的概念成为类
Java中如何定义一个类

1
2
3
4
5
6
7
8
9
10
访问权限符 关键字 类名{
访问权限修饰符 数据类型1 变量名2
访问权限修饰符 数据类型2 变量名2
······
访问权限修饰符 返回值类型 方法名(形参列表){
}
}

//属性定义在方法以外,类以内
//方法定义在方法以外,类以内

类与对象的关系

  • 类:定义了对象应具有的特征和行为,类是对象的模板
  • 对象:拥有多个特征和行为的实体,对象是类的实例

变量

实例变量

用static使用的全局变量不属于实例变量

  • 在方法以外,类以内生声明的非静态的成员变量
  • 作用域:可以在该类中非静态方法中使用
  • 在该类中不能有两个名称相同的成员变量
  • 有默认值,基本数据类型默认为0,引用数据类型为null

局部变量

方法内声明的变量

  • 声明方法

    ​数据类型 变量名

  • 作用域: 声明该变量到变量所在代码块(方法)结束

  • 在该代码块(方法)中不能出现两个名称相同的局部变量

  • 当局部变量与成员变量名称相同时,优先使用局部变量

  • 无默认值

方法

实例方法

在类中声明的非静态方法

比如:

1
2
Scanner sc = new Scanner(System.in);
sc.next();
  • static修饰的方法中可以直接使用static修饰的成员,如果要使用非static修饰的成员必须先在该方法中创建该类对象,再通过对象调用属性和方法
  • 非static修饰的方法中可以使用任何成员

构造方法

定义

类中的特殊方法,主要用于创建对象.

特点

  • 名称与类名完全相同
  • 没有返回值类型
  • 创建对象时,触发构造方法的调用,不用通过句点手动调用

注意

如果没有在类中显示定义构造方法,则编译器默认提供无参构造

对象的创建过程

注意啦,注意啦,敲黑板,有好多资深程序员都不知道的冷知识。

  • 内存中开辟对象空间
  • 为各个属性赋予初始值
  • 执行构造方法中的代码
  • 【将对象的地址赋值给变量】

在这里插入图片描述

构造方法

作用

创建该类对象

写法

1
2
3
访问权限修饰符 类名 (形参列表){

}

如果没有写构造函数,系统将帮助我们自动给该类生成一个无参构造函数

如果类中已经有了构造函数,系统将不再为我们自动生成构造函数

This关键字

this : 谁调用this所在的方法,this就代表谁

当局部变量与成员变量名称一致时,可以区分局部变量与成员变量

只能在非静态方法中使用

Prev:
面向对象的三大特征
Next:
集合的基本概念
catalog
catalog