5-JavaSE之面向对象编程-类与对象(上)1
面向对象编程是Java的核心特性,它使得代码更加结构化、可维护性更强。在这个主题中,我们将探讨类与对象的概念,以及与它们相关的其他关键概念。 1. **类与对象**: 类是面向对象编程的基础,它是描述一组具有相同属性和行为的对象的模板或蓝图。在Java中,类定义了数据成员(属性或变量)和成员方法(函数)。通过类,我们可以创建具有特定特性的实例,这些实例被称为对象。例如,我们创建一个名为`Person`的类,它有`name`和`age`属性,以及`getPersonInfo`方法用于获取个人信息。 ```java class Person { public String name; public int age; public Person(String name, int age) { this.name = name; this.age = age; } public String getPersonInfo() { return "姓名:" + this.name + ", 年龄:" + this.age; } } ``` 通过`new`关键字,我们可以创建`Person`类的实例: ```java Person p1 = new Person(); // 创建一个空的Person对象 Person p2 = new Person("Steven", 25); // 创建一个带有名字和年龄的Person对象 ``` 2. **构造器**: 构造器是一种特殊的方法,用于初始化新创建的对象。在Java中,构造器与类名相同,没有返回类型。`Person`类中的构造器接收`name`和`age`参数,并将它们赋值给相应的实例变量。 3. **访问修饰符**: Java提供了访问修饰符来控制类成员的可见性。`private`关键字限制了成员只能在同一个类内部访问,而没有修饰符(默认为包私有)的成员在同一个包内的类中可以访问。`public`修饰的成员对所有类都是可见的。 4. **this关键字**: `this`关键字在类的实例方法中代表当前对象。在`Person`类的构造器中,`this.name = name`表示将构造器的参数`name`赋值给当前`Person`对象的`name`属性。 5. **static关键字**: `static`关键字用于声明静态成员,它们属于类而不是类的实例。这意味着所有类的实例都可以共享静态成员,无需创建对象。例如,我们可以有一个静态方法`sayHello()`,所有`Person`对象都可以调用它,而无需创建`Person`实例。 ```java class Person { // ... public static void sayHello() { System.out.println("你好,我是Person类"); } } ``` 调用静态方法:`Person.sayHello();` 6. **对象的创建与初始化**: 在Java中,对象的创建是通过`new`关键字完成的,这会分配内存空间并调用相应的构造器进行初始化。例如,`Person per = new Person("小明", 18);`创建了一个新的`Person`对象,并将其引用赋值给变量`per`。 7. **成员变量与局部变量**: 成员变量是类的一部分,它们在整个对象的生命周期内存在。局部变量只在方法、构造器或块的范围内有效。 8. **异常处理**: 当尝试访问`null`引用的成员时,会抛出`NullPointerException`。例如,如果我们忘记创建`Person`对象并尝试访问其属性或方法,就会出现这种异常: ```java Person per = null; System.out.println(per.name); // 抛出NullPointerException ``` 9. **主方法**: `main`方法是Java程序的入口点,JVM从这里开始执行。`public static void main(String[] args)`是每个Java应用程序都必须包含的主方法。在这里,我们通常会创建对象、调用方法等。 总结,面向对象编程的类和对象是Java编程的基础,理解这些概念对于编写高效、易于维护的Java代码至关重要。通过类,我们可以封装数据和行为;通过对象,我们可以实例化这些类并操作其中的数据。在实践中,还需要掌握继承、多态和接口等更高级的面向对象概念。
剩余14页未读,继续阅读
- 粉丝: 32
- 资源: 293
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Homebrew 国内安装脚本,快速部署 brew ,国内镜像
- 2022-2006外出务工、耕地面积等数据,中国农村经营管理统计年报-最新出炉.zip
- 消息推送平台,推送下发邮件短信【微信服务号】【微信小程序】企业微信钉钉等消息类型
- 嵌入式系统开发中的高性能微控制器数据手册解析-6011A
- 一个基于 vue、datav、Echart 框架的大数据可视化(大屏展示)模板,提供数据动态刷新渲染、屏幕适应、内部图表自由替换、Mixins注入等功能
- 各种活动广告酷炫好看的海报PSD源文件4(30个)
- cocos creator 3.8 用贴图创建材质
- 2005-2021年全国各省家庭承包耕地面积和流转总面积数据-最新出炉.xlsx.zip
- 一个由Java实现的游戏服务器端框架,可快速开发出易维护、高性能、高扩展能力的游戏服务器
- 生涯发展报告_编辑.pdf