【JavaSE】类_对象

目录

1、类

1.1定义

1.2成员变量

1.3局部变量

1.4声明格式

2、对象


1、类

1.1定义

  • 类是面向对象编程实现信息封装的基础。
  • 每个类包含数据说明和一组操作数据或传递消息的函数。
  • 类的实例称为对象。
  • 类的实质是一种引用数据类型,类似于byte、short、int等基本数据类型,但更复杂。

1.2成员变量

1.2.1成员变量的定义

  • 在Java SE中,类的成员变量(也称为属性或字段)是定义在类内部但位于方法之外的变量。这些变量用于存储与类相关的数据,并在类的不同实例之间共享(除非它们被声明为static)。
  • 位置:成员变量定义在类体中,但在任何方法之外。
  • 语法:数据类型 变量名;

1.2.2成员变量的类型

  • 基本数据类型:如int、double、char、boolean等。
  • 引用数据类型:如数组、其他类的实例、接口等。

1.2.3成员变量的默认值

  • 如果在类体中没有对成员变量赋初值,那么系统将会给成员变量进行默认初始化。 对于基本数据类型: 数值型(byte、short、int、long)默认为0。
  • 浮点型(float、double)默认为0.0。
  • 字符型(char)默认为空字符('\u0000')。
  • 布尔型(boolean)默认为false。
  • 对于引用数据类型:默认为null。

1.2.4成员变量的作用域

  • 成员变量在类体的任何位置都是有效的,可以在类的任何方法中被访问和修改(除非它们被声明为private或protected)。

1.2.5成员变量的访问修饰符

  • public:成员变量可以被任何类访问。
  • protected:成员变量可以被同一包内的其他类和不同包中的子类访问。
  • 默认(无修饰符):成员变量只能被同一包内的其他类访问。
  • private:成员变量只能被该类自身访问。

1.2.6静态成员变量(类变量)

  • 如果成员变量被声明为static,则它成为类变量(也称为静态变量)。
  • 类变量属于类本身,而不是类的实例。
  • 类变量在内存中只有一份,会被类的所有对象共享。
  • 可以通过类名直接访问类变量,也可以通过对象名访问(但通常不推荐这样做)。

1.2.7成员变量的初始化

  • 可以在声明成员变量时直接赋值。
  • 可以在构造方法中初始化成员变量。
  • 可以在初始化块中初始化成员变量(初始化块在每次创建对象时都会执行,并且在构造方法之前执行)。

1.3局部变量

1.3.1定义

  • 在Java SE中,类的局部变量是定义在方法内部或代码块内部的变量。它们具有特定的作用域和生命周期,并且在方法或代码块执行完毕后会被销毁。
  • 定义:局部变量是定义在方法体内部或代码块(如if语句、for循环等)内部的变量。
  • 位置:局部变量只能在其所在的方法或代码块内部被访问。

1.3.2作用域

  • 局部变量的作用域仅限于其定义的方法或代码块内部。一旦离开该作用域,该变量将不再存在。
  • 在方法或代码块内部,局部变量具有最高的优先级。如果局部变量与成员变量同名,那么在方法或代码块内部将优先使用局部变量。

1.3.3生命周期

  • 局部变量的生命周期与其所在的方法或代码块的执行周期相同。当方法或代码块被调用时,局部变量被创建;当方法或代码块执行完毕后,局部变量被销毁。
  • 局部变量不会自动初始化,必须在声明时或声明后的某个位置进行显式初始化。

1.3.4初始化

  • 局部变量在使用前必须显式初始化。如果未初始化就使用,编译器会报错。
  • 初始化可以在声明时直接赋值,也可以在方法或代码块内部的某个位置进行赋值。

1.3.5修饰符

  • 局部变量不能使用访问控制修饰符(如public、protected、private)进行修饰。
  • 局部变量也不能使用static修饰符进行修饰,因为局部变量属于某个具体的方法或代码块,而static修饰的变量属于类。

1.4声明格式

class ClassName {  
    // 字段(成员变量/属性)  
    field;  
      
    // 方法(成员方法)  
    method;  
}

2、对象

2.1定义

  • 对象是某个类的一个实体。
  • 当有了对象后,类的属性便有了属性值,行为也就有了相应的意义。
  • 类是描述某一对象的统称,对象是这个类的一个实例。

2.2使用

  • 访问对象的属性和方法
  • 如果是在当前类中,可以直接访问属性和方法
  • 如果是在其他类中,可以使用对象名 点运算符去访问
  • 关键字:使用class关键字来定义类。
ClassName objectName = new ClassName();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值