本文涵盖Java面向对象核心:类和对象、内存原理、成员/局部变量、封装、权限修饰符、构造方法、this关键字,搭配趣味讲解+行业拓展知识,Java新手必学的OOP入门核心!

摘要
本篇为Java SE入门第五天核心笔记,正式进入面向对象编程(OOP) 核心阶段,用最通俗的语言讲解类与对象的关系、内存机制、变量区别、封装特性和构造方法,结合趣味梗、代码实战和IT行业干货,让零基础小白轻松攻克Java最重要的知识点,为后续框架学习打下坚实基础。
一、高效学习法则(必看!)
- 记忆核心原理 :对大脑皮层进行一次又一次的重复刺激,遵循学习周期曲线,每隔几天就复习一遍知识点,才能真正牢记;
- 拒绝速成:编程学习没有捷径,周期性复盘、反复敲代码,是掌握技术的唯一路径。
二、面向对象核心:类和对象(OOP入门)
1. 灵魂提问:学Java还没对象?new一个!
这是Java最经典的趣味梗:
别人问你:学Java的,怎么没
对象?你直接回:我
new一个就完了!
对象 :真实存在的具体事物(比如女朋友、手机、电脑、学生);
类 :对象的图纸/模板,描述一类事物的属性(特征)和行为(功能)。
2. 核心思想
- 面向对象大大降低了程序员的开发门槛,不用关注底层实现,直接调用对象完成功能;
- 基于类(图纸) ,我们可以无限创建对象(实例),就像根据图纸生产产品一样简单。
3. 类的定义格式(Java代码)
类 = 属性(成员变量)+ 行为(成员方法)
java
// 类:学生模板
public class Student {
// 1. 属性:成员变量
String name; // 姓名
int age; // 年龄
// 2. 行为:成员方法
public void study() {
System.out.println("学生在学习");
}
}
4. 对象的创建与使用(关键字:new)
java
public class Test {
public static void main(String[] args) {
// 核心:new 类名() → 创建对象
Student stu = new Student();
// 使用对象的属性
stu.name = "张三";
stu.age = 20;
// 使用对象的行为
stu.study();
}
}
三、对象内存图(核心原理)
Java 内存分为 栈内存 和 堆内存,对象的存储遵循固定规则:
- 栈内存 :存储对象名 (引用变量),保存堆内存的地址值;
- 堆内存 :存储对象的真实数据 (成员变量),
new出来的东西都在堆里; - 方法执行:栈内存
先进后出,对象通过地址值找到堆内存的数据。
简化记忆:
- 对象名(栈)= 遥控器
- 对象数据(堆)= 电视机
- 遥控器通过信号(地址)控制电视机

四、成员变量 vs 局部变量(高频面试题)
| 对比项 | 成员变量 | 局部变量 |
|---|---|---|
| 定义位置 | 类中、方法外 | 方法内、方法参数、代码块中 |
| 内存位置 | 堆内存 | 栈内存 |
| 初始化值 | 有默认初始值(int=0,String=null) | 无默认值,必须手动赋值才能使用 |
| 作用域 | 整个类中有效 | 当前方法/代码块内有效 |
| 生命周期 | 随对象创建而创建,对象销毁而销毁 | 随方法调用创建,方法结束销毁 |
代码示例
java
public class VariableDemo {
// 成员变量
String name = "Java";
public void test() {
// 局部变量(必须赋值)
int num = 10;
System.out.println(num);
}
}
五、封装(面向对象三大特征之一)
1. 什么是封装?
把对象的属性私有化,对外提供公共的访问方法,隐藏实现细节,保护数据安全 。

2. 四大权限修饰符(范围从小到大)
Java 用于控制访问权限的关键字,封装核心:
- private(私有):仅当前类中可访问(最常用,封装属性);
- default(默认,不写关键字):同一个包下可访问;
- protected(受保护):同一个包 + 子类可访问;
- public(公共):任意位置可访问。
✅ 开发规范 :成员变量必须用 private 私有化,提供 get/set 方法访问。
3. 就近原则
当局部变量和成员变量同名 时,方法优先使用局部变量(谁近用谁)。
六、构造方法(对象创建的核心)
1. 定义
构造方法是专门用来创建对象的方法,创建对象时自动调用,无需手动调用。
2. 格式
java
修饰符 类名(参数列表) {
// 初始化对象属性
}
3. 核心规则(必背!)
- 默认构造方法 :如果一个类没有写任何构造方法,编译器自动赠送一个无参构造方法;
- 有参构造覆盖规则 :如果手动写了有参构造方法 ,编译器不再提供无参构造;
- 开发建议:无论是否使用,手动写无参 + 有参构造方法。
4. this 关键字(解决就近原则)
this.成员变量:调用当前对象的成员变量;this():调用本类的其他构造方法。
代码示例(标准Java类:JavaBean)
java
public class GirlFriend {
// 私有化成员变量
private String name;
private int age;
// 无参构造
public GirlFriend() {}
// 有参构造
public GirlFriend(String name, int age) {
// this解决同名冲突
this.name = name;
this.age = age;
}
// get/set方法
public String getName() { return name; }
public void setName(String name) { this.name = name; }
}
七、IT行业拓展干货(职场必知)
1. 雷军经典创业案例
- 米聊:微信的前身,国内最早的移动社交软件,因各种原因被微信反超;
- 卓越网:早期电商平台,被亚马逊收购,资金为 WPS 提供了续命支持。
2. 国产科技与信创产业(国家战略)
- 核心企业:中国电子、海康威视、中国电科、阿里达摩院;
- 国产数据库:达摩数据库等自主研发产品;
- 信创化 :信息技术应用创新,覆盖军队、央企、学校、企业,全面实现国产替代,是未来计算机行业的核心风口。
八、Day05 核心总结
- 类和对象 :类是模板,对象是实例,
new关键字创建对象; - 内存:对象名在栈,对象数据在堆,通过地址关联;
- 变量:成员变量有默认值,局部变量必须赋值;
- 封装 :
private私有化属性 +get/set方法,保护数据; - 构造方法:创建对象自动调用,手写有参则无默认无参;
- this:解决变量同名冲突,调用本类构造;
- 学习 :周期性重复刺激大脑,巩固知识点,技术+行业视野双提升!
