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() 清空换行)。

相关推荐
皮皮林55119 小时前
拒绝写重复代码,试试这套开源的 SpringBoot 组件,效率翻倍~
java·spring boot
顺风尿一寸1 天前
从 Java NIO poll 到 Linux 内核 poll:一次系统调用的完整旅程
java
程途知微1 天前
JVM运行时数据区各区域作用与溢出原理
java
华仔啊1 天前
为啥不用 MP 的 saveOrUpdateBatch?MySQL 一条 SQL 批量增改才是最优解
java·后端
xiaoye20181 天前
Lettuce连接模型、命令执行、Pipeline 浅析
java
beata1 天前
Java基础-18:Java开发中的常用设计模式:深入解析与实战应用
java·后端
Seven971 天前
剑指offer-81、⼆叉搜索树的最近公共祖先
java
雨中飘荡的记忆2 天前
保证金系统入门到实战
java·后端
Nyarlathotep01132 天前
Java内存模型
java