### Java面向对象基础知识点详解 #### 一、面向对象概述 面向对象编程(Object-Oriented Programming, OOP)是一种程序设计思想。OOP 的核心是将现实世界中的事物抽象成对象,通过对象来实现对现实世界的模拟。Java 作为一种典型的面向对象语言,其面向对象特性包括封装、继承和多态。 #### 二、类与对象 **1. 类** 类是对具有共同特征的对象的一种抽象,它包含了对象的属性和行为。例如,在上面的例子中,“Dog”类就是一个具体的类,它包含了小狗的颜色、品种、年龄等属性以及吃东西、叫唤等行为。 ```java class Dog { // 成员变量:保存对象的状态 String color; // 颜色 String brand; // 品种 int age; // 年龄 String gender; // 性别 String name; // 名称 // 成员方法:描述对象的行为 public void eat() { System.out.println("小狗喜欢吃肉"); } public void bark() { System.out.println("汪~~~"); } // 构造方法:初始化对象 public Dog() { // 默认构造方法 } public Dog(String color, String gender, String brand, String name, int age) { this.color = color; this.gender = gender; this.brand = brand; this.name = name; this.age = age; } } ``` **2. 对象** 对象是类的一个实例,可以通过类名+new关键字来创建。创建对象后,可以调用它的方法或修改它的属性。 ```java Dog dahuang = new Dog(); // 创建无参构造方法的Dog对象 dahuang.name = "大黄"; dahuang.brand = "中华田园犬"; dahuang.age = 3; Dog wangcai = new Dog("黑色", "公", "阿拉斯加", "旺财", 1); // 创建有参构造方法的Dog对象 ``` **3. this关键字** `this`关键字用于指代当前对象。当实例方法中的局部变量名与实例变量名冲突时,可以使用`this`关键字来区分。 ```java public void setAge(int age) { this.age = age; // 这里使用this.age来指定当前对象的age属性 } ``` 此外,`this()`可以在构造方法中调用其他构造方法。 ```java public Dog(String color) { this(); // 调用无参构造方法进行初始化 this.color = color; } ``` **4. 封装** 封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。封装可以通过将类的属性设置为私有(private),并通过公共的getter和setter方法来访问和修改属性。 ```java private int age; public int getAge() { return age; } public void setAge(int age) { if (age >= 0 && age <= 15) { this.age = age; } else { System.out.println("年龄输入不合法!"); } } ``` **5. 继承** 继承是一种建立新类的方式,新类继承现有类的属性和方法。在Java中,使用`extends`关键字来表示继承关系。 ```java class Pet { String color; String brand; String gender; String name; int age; public void eat() { System.out.println("宠物都需要吃"); } public void bark() { System.out.println("宠物都能叫唤"); } } class Cat extends Pet { // Cat类继承自Pet类 } ``` #### 三、多态 **1. 多态概念** 多态是指一个接口可以有多种不同的实现方式。在Java中,多态可以通过子类重写父类的方法来实现。 **2. 多态的实现** - 子类继承父类 - 子类重写父类的方法 - 使用父类引用指向子类对象 ```java Pet pet = new Cat(); // 父类引用指向子类对象 pet.eat(); // 输出 "宠物都需要吃",但实际上是调用Cat类的eat方法 ``` ### 总结 面向对象是Java的核心之一,通过类和对象的概念可以更好地组织代码,并提高代码的可维护性和可扩展性。封装、继承和多态则是实现面向对象编程的关键特性,它们帮助我们构建复杂的应用程序。通过理解这些基本概念,可以更好地掌握Java语言的面向对象编程技巧。
剩余18页未读,继续阅读
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 此存储库收集了所有有趣的 Python 单行代码 欢迎随意提交你的代码!.zip
- 高考志愿智能推荐-JAVA-基于springBoot高考志愿智能推荐系统设计与实现
- 标准 Python 记录器的 Json 格式化程序.zip
- kernel-5.15-rc7.zip
- 来自我在 Udemy 上的完整 Python 课程的代码库 .zip
- 来自微软的免费 Edx 课程.zip
- c++小游戏猜数字(基础)
- 金铲铲S13双城之战自动拿牌助手
- x64dbg-development-2022-09-07-14-52.zip
- 多彩吉安红色旅游网站-JAVA-基于springBoot多彩吉安红色旅游网站的设计与实现