【JAVA基础指南(四)】快速掌握类和对象

快速掌握类和对象

    • 前言
    • [1. 类和对象](#1. 类和对象)
      • [1.1 概述](#1.1 概述)
      • [1.2 类的构成](#1.2 类的构成)
      • [1.3 构造方法](#1.3 构造方法)
    • [2. 封装](#2. 封装)
      • [2.1 概述](#2.1 概述)
      • [2.2 封装构成](#2.2 封装构成)
      • [2.3 标准类](#2.3 标准类)
      • [2.3 权限修饰符](#2.3 权限修饰符)
      • [2.4 优点](#2.4 优点)
    • 结语

🎬 博主名称: 超级苦力怕

🔥 个人专栏: 《AI 工具使用目录》

🚀 每一次思考都是突破的前奏,每一次复盘都是精进的开始!


前言

本文主要内容:类和对象,包含 Java 面向对象的封装


1. 类和对象

  • 类是对象共同特征的描述
  • 对象是真实存在的东西

1.1 概述

类是一种自定义数据类型,可以用来描述对象的属性和行为。类也是由属性和行为构成,其中属性定义了事物的特征,行为定义了事务能执行的操作。

对象是类的实例,可以用类的方法和属性达到预期的效果。每个对象都有自己的状态,由属性的值决定,对象的行为可以通过调用方法来触发。

1.2 类的构成

java中,类的定义一般包括类名、类的成员变量、类的成员方法,其中成员变量是属性,成员方法是行为。

可以通过需求,先设计类,有了类才能获得对象。

快速理解:我们如果想设计一个游戏角色(需求),就要先想游戏角色都包含什么(类),再去设计具体的角色(对象)

在 Java 中体现如下:

java 复制代码
public class 类名{
	成员变量;
	成员方法;
	构造方法;
}

注意事项:

  • 类名首字母大写,做到见名知意(驼峰命名法)
  • 一个Java文件可以定义多个类,且类只能由public修饰,但推荐一个文件中只写一个class类

1.3 构造方法

构造方法是一种特殊的方法,主要是完成对象数据的初始化,在创建对象的时候,根据调用的参数,自动调用有参构造或无参构造

在 Java 中体现如下

java 复制代码
public class 类名{
​        修饰符 类名( 参数 ) {
​        }
}

示例代码:

java 复制代码
class Student {
    private String name;
    private int age;

    //构造方法
    public Student() {
        System.out.println("无参构造方法");
    }

    public void show() {
        System.out.println(name + "," + age);
    }
}

2. 封装

2.1 概述

Java中的封装 (encapsulation) 指将细节隐藏起来,仅对外暴露接口,实现了信息的隐藏和保护。

基本原则:对象代表什么,就得封装对应的数据,并提供数据对应的行为

2.2 封装构成

封装由修饰符 private 构成,可以用来修饰成员变量成员方法

被 private 修饰的成员只能在本类进行访问,如果需要被其他类使用,通常提供get/set方法。

  • get方法:用于获取成员变量值,使用 public 修饰
  • set方法:用于设置成员变量的值,方法用 public 修饰

2.3 标准类

一个完整的JavaBean,也就是标准类,有着以下特点

  • 类名需要见名知意
  • 成员变量使用 private 修饰
  • 至少提供无参构造和带全部参数的构造方法
  • 提供每一个成员变量对应的get和set方法

JavaBean示例:

java 复制代码
class Student {
    //成员变量
    private String name;
    private int age;

    //构造方法
    public Student() {
    }

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    //成员方法
    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public int getAge() {
        return age;
    }

    public void show() {
        System.out.println(name + "," + age);
    }
}

2.3 权限修饰符

修饰符 同类 同包 不同包子类 不同包非子类 适用场景
public 对外公开的API接口、工具类、常量
protected 供子类继承和重写的方法、属性
默认 包内共享的辅助类、内部实现
private 封装内部状态、实现细节

2.4 优点

封装有着提高安全性提高代码复用性降低耦合度便于调试几个方面。

  • 提高安全性:可以放置外部类直接访问和修改数据,只能通过get和set方法进行访问和修改,确保数据的完整性和安全性。
  • 提高复用性:封装可以使类可以作为一个独立的组件被重复使用。只要类的接口保持不变,就可以在不同的环境中使用同一个类。
  • 降低耦合度:封装通过将数据和方法组织在一起,减少了类与类的依赖,提高代码的灵活性和可维护性。
  • 便于调试:如果数据出现错误,只需要检查类内部的代码,而不需要检查整个程序,因为数据只能通过类提供的方法进行访问和修改。

结语

  • 类是对象的模板,定义了对象的属性(成员变量) 和行为(成员方法)
  • 对象是类的具体实例,通过new关键字创建
  • 封装通过private修饰符隐藏内部细节,提供get/set方法安全访问数据
  • 如果本文对你有帮助:欢迎点赞、收藏,让更多正在学 Java 的同学看到。
  • 遇到问题或有不同理解:可以在评论区留言,一起讨论、互相学习。
  • 想系统看更多内容:可以关注专栏《JavaSE》,一起把基础打牢。
相关推荐
是有头发的程序猿11 小时前
Python爬虫防检测实战:基于类封装的工程化解决方案(2026)
开发语言·爬虫·python
张健115640964811 小时前
explicit和initializer_list
开发语言·c++
万岳科技系统开发11 小时前
付费知识系统源码的整体架构设计与模块划分
java·数据库·小程序
刘一说11 小时前
2026年Java技术栈全景图:从Web容器到云原生的深度选型指南(附避坑指南)
java·前端·spring boot·后端·云原生·tomcat·mybatis
web守墓人11 小时前
【编程】 C语言的前身-B语言介绍
java·c语言·数据库
wanzhong233311 小时前
开发日记4-引入日志配置
java·idea
微小冷11 小时前
C#异步编程详解
开发语言·c#·async·await·异步编程
qq_3161652911 小时前
C#委托和事件的区别
开发语言·c#
野生技术架构师11 小时前
1000道Java面试题附答案详解(整理版)
java·开发语言
CSDN_RTKLIB11 小时前
【One Definition Rule】类重复定义解决思路
开发语言·c++