js--6

1.类与对象

类是对象共同特征的描述(设计图),对象是真实存在的具体实例在 Java 中,必须先定义类,才能通过 new 类名() 创建对象。

2.定义类

1.类的组成:成员变量(属性,名词)、成员方法(行为,动词)、构造器等语法:

public class 类名 { // 成员变量、成员方法等 }

3.获取对象

创建对象的语法:类名 对象名 = new 类名();

例如:Phone p = new Phone();

4.使用对象

访问成员变量:对象名.成员变量

调用成员方法:对象名.成员方法(...)

如果成员变量被 private 修饰,需通过 get/set 方法访问。

5.成员变量默认值

基本类型:byte/short/int/long0

float/double0.0

booleanfalse

引用类型(类、接口、数组、String)→ null

局部变量没有默认值,必须手动初始化。封装对象代表什么,就封装对应的数据 和行为通过 private 隐藏数据,提供 publicget/set 方法来访问和修改,保 证数据安全。

6.private 关键字

1.权限修饰符,修饰成员变量和成员方法被修饰的成员只能在本类中访问,外部需通过 get/set 方法操作。

2. get/set 方法setXxx(参数):给成员变量赋值并做合法性校验getXxx():获取成员变量的值例如:setAge(int a) 可以限制年龄范围,getAge() 返回年龄。

7.就近原则

当局部变量与成员变量重名时,优先使用局部变量谁离代码执行点更近就用谁,例如方法内的局部变量 age 会覆盖类中的成员变量 age

8.构造方法

作用:创建对象时由虚拟机自动调用,给成员变量初始化格式:修饰符 类名(参数) { 方法体 }特点:方法名与类名完全一致,没有返回值类型(连 void 都不写),不能 return 数据。9.构造方法注意事项-

若未定义构造方法,系统会默认提供一个无参构造方法- 若定义了构造方法,系统不再提供默认无参构造- 支持重载(无参和带参构造方法共存)- 推荐手动编写无参和带全部参数的构造方法定义带参构造后,如需使用无参构造创建对象,必须手动添加无参构造方法。

10.标准 JavaBean 类

1. 类名见名知意

2. 成员变量用 private 修饰

3. 提供无参构造和带全部参数的构造

4. 为每个成员变量提供 setXxx()getXxx() 方法是 Java 中编写实体类的规范,保证封装性和可操作性。

10.this 关键字

本质:代表方法调用者的地址值常用于区分重名的成员变量与局部变量(如 this.age = age),也可调用本类的其他构造方法(this(...))。

11.成员变量 vs 局部变量

1.位置:成员变量在类中、方法外;

2.局部变量在方法内或方法参数上初始化:成员变量有默认值;

3.局部变量必须手动赋值内存:成员变量在堆内存;

4.局部变量在栈内存生命周期:成员变量随对象创建 / 销毁;

5.局部变量随方法调用 / 结束作用域:成员变量整个类有效;

6.局部变量仅当前方法有效就近原则是两者重名时的核心处理规则。

12.Scanner 输入体系

第一套:nextInt()/nextDouble()/next()(遇到空格、制表符、回车就停止)

第二套:nextLine()(可以接收空格,遇到回车才停止)混合使用时注意:next() 系列会留下换行符,导致后续 nextLine() 读取空字符串,需额外处理(例如在 nextInt() 后调用一次 nextLine() 清空换行)。

相关推荐
程序员黑豆1 小时前
Java类型推断完全指南:从var到菱形运算符,掌握使用限制与最佳实践
java·前端·ai编程
风流 少年2 小时前
Spring AI 2.0:Memory
java·后端·spring
码匠许师傅2 小时前
【C++ 面试真题】聊聊 C++ 的移动语义与右值引用
java·c++·面试
2603_965148112 小时前
如何解析JSON数据?API返回的商品信息处理教程
开发语言·数据库·python·自动化·json·api
小席是个热心肠2 小时前
AI相关的自我学习
java·人工智能·学习
知无不研5 小时前
lambda表达式的使用(3)
开发语言·c++·lambda
数智化管理手记5 小时前
海量数据如何沉淀有效数据资产?数据标准化治理方案如何搭建?
java·大数据·人工智能
cfm_29145 小时前
SpringAI + Ollama 本地大模型
java·开发语言·人工智能·语言模型
鲸采云SRM采购管理系统6 小时前
采购管理系统哪家好?2026最新测评对比
java·服务器·数据库
C++ 老炮儿的技术栈6 小时前
基于Qt实现轻量化本地音乐播放器
开发语言·c++·qt·c·播放器·音乐