当前位置: 首页 > wzjs >正文

山东一建建设有限公司官方网站阿里巴巴国际贸易网站官网

山东一建建设有限公司官方网站,阿里巴巴国际贸易网站官网,如何把网站上传到空间,购物券网站怎么做JavaSE 面向对象编程核心概念总结 一、设计对象并使用 核心思想:将现实世界的事物抽象为类,通过类创建对象,调用对象的属性和方法。 示例:设计一个Student类 // 定义类 public class Student {// 属性String name;int age;// …

JavaSE 面向对象编程核心概念总结

一、设计对象并使用

核心思想:将现实世界的事物抽象为类,通过类创建对象,调用对象的属性和方法。

示例:设计一个Student

// 定义类
public class Student {// 属性String name;int age;// 方法public void study() {System.out.println(name + "正在学习");}
}// 创建并使用对象
Student s = new Student();
s.name = "张三";
s.study(); // 输出:张三正在学习
二、封装(Encapsulation)

核心思想:将数据(属性)和操作(方法)绑定在一起,隐藏内部实现细节,仅对外提供公共访问接口。

实现方式

  1. 使用private修饰属性,限制直接访问。
  2. 提供publicgetter/setter方法访问和修改属性。

示例

public class Student {private String name; // 私有属性// getter方法public String getName() {return name;}// setter方法public void setName(String name) {this.name = name; // this关键字区分成员变量和局部变量}
}
三、this关键字

作用

  1. 引用当前对象:区分成员变量和局部变量(同名时)。
  2. 调用构造方法:在构造方法中调用其他构造方法(必须位于第一行)。

示例

public class Student {private String name;// 构造方法public Student(String name) {this.name = name; // this引用当前对象的属性}// 重载构造方法public Student() {this("默认名称"); // 调用另一个构造方法}
}
四、构造方法(Constructor)

特点

  1. 方法名与类名相同。
  2. 没有返回类型(连void都没有)。
  3. 用于初始化对象的状态。

分类

  • 无参构造:默认提供,若自定义构造方法则消失。
  • 有参构造:通过参数初始化属性。

示例

public class Student {private String name;private int age;// 无参构造public Student() {}// 有参构造public Student(String name, int age) {this.name = name;this.age = age;}
}
五、标准JavaBean(POJO)

定义:符合特定规范的Java类,必须包含:

  1. 私有属性。
  2. 无参构造方法。
  3. 公共的getter/setter方法。
  4. 可选:toString()equals()hashCode()方法。

示例

public class User {// 私有属性private String username;private int age;// 无参构造public User() {}// 有参构造public User(String username, int age) {this.username = username;this.age = age;}// getter/setterpublic String getUsername() { return username; }public void setUsername(String username) { this.username = username; }public int getAge() { return age; }public void setAge(int age) { this.age = age; }// 重写toString@Overridepublic String toString() {return "User{username='" + username + "', age=" + age + "}";}
}
六、对象内存图(简化版)

示例代码

Student s1 = new Student("张三", 20);
Student s2 = s1;
s2.setName("李四");
System.out.println(s1.getName()); // 输出:李四

内存分布

  1. 栈内存:存储局部变量(如s1s2),指向堆内存中的对象。
  2. 堆内存:存储对象实例(包括属性值)。
  3. 方法区:存储类的信息(如方法字节码)。

关键点

  • s1s2指向同一个对象,修改s2会影响s1
七、成员变量 vs 局部变量
对比项成员变量局部变量
定义位置类中,方法外方法内或代码块内
存储位置堆内存(对象中)栈内存(方法栈帧中)
生命周期随对象创建而存在,随对象销毁而消失随方法调用而存在,方法结束后消失
默认值有默认值(如0null无默认值,必须先赋值后使用
访问修饰符可使用privatepublic不可使用
八、常见面试问题
  1. 封装的意义是什么?

    • 隐藏实现细节,保护数据安全,提高代码可维护性。
  2. this关键字的作用?

    • 引用当前对象,调用构造方法。
  3. 构造方法的特点?

    • 方法名与类名相同,无返回类型,用于初始化对象。
  4. 成员变量和局部变量的区别?

    • 见上表。
  5. JavaBean的规范是什么?

    • 私有属性、无参构造、getter/setter、可选重写toString等。
九、最佳实践
  1. 封装优先:所有属性都应使用private修饰,通过getter/setter访问。
  2. 构造方法重载:提供无参和有参构造,方便对象创建。
  3. IDE工具:使用IDE自动生成getter/setter、构造方法和toString
  4. 内存意识:避免对象引用的意外修改(如通过clone()或不可变类)。
http://www.dtcms.com/wzjs/838853.html

相关文章:

  • 用spl做网站企业网站建设费用会计分录
  • 网站建设 顺德营销型网站建设ppt模板下载
  • 检测网站是否正常学做网站论坛VIP怎么样
  • 玉环县建设局网站怎样做网络推广在哪济南兴田德润什么活动
  • 域名注册网站建设温州网站建设最新报价
  • 做网页的网站叫什么软件kol营销
  • 传统企业网站建设环保设备东莞网站建设
  • 做出口的网站ghost系统怎么卸载wordpress
  • 网站seo诊断分析报告蜜芽加密通道入口2021
  • 变性人做网站嘉兴城乡建设厅网站
  • 织梦如何做响应式手机网站wordpress设置在新页面打开空白
  • 保险做的好的网站wordpress获取作者的文章
  • 梅州建站网络有限公司信阳市工程建设信息网站
  • 中国建设工程质量协会网站asp作业做购物网站代码
  • linux服务器安装网站网址大全123下载安装
  • 医院网站设计与实现网站建设中有关数据库问题
  • 网站登录页面空白网站建设读后感
  • 建设网站公司电话销售话术免费手机网站建站
  • 动易网站设计方案网站伪静态如何配置文件
  • 网站开发的三个流程寻找网站建设员
  • 怎样说服企业做网站建设推广专业seo培训学校
  • 手机自适应网站cpu游戏优化加速软件
  • 企业网站管理系统如何使用说明企业网站内容运营
  • WordPress网站hym地图关于旅行的网站怎样做
  • 做平面计设和网站哪个好与建设部网站
  • 接口网站建设ptp网站开发
  • 网站seo 教程企业网站管理系统软件
  • 企业网站 html5山西网站建设电话
  • 网站建设相关优化清镇手机网站建设
  • 网站开发简历的项目经验小程序制作流程步骤