建设网站的基本知识,网站建设东北,浙江省网站icp备案多久,成都隆昌网站建设目录
Java 面向对象编程#xff08;OOP#xff09;
1. 类与对象
1.1 类的定义
1.2 对象的创建与使用
2. 封装
2.1 访问修饰符
2.2 使用 Getter 和 Setter 方法
3. 继承
3.1 继承的基本用法
3.2 方法重写
4. 多态
4.1 编译时多态#xff08;方法重载#xff09;…目录
Java 面向对象编程OOP
1. 类与对象
1.1 类的定义
1.2 对象的创建与使用
2. 封装
2.1 访问修饰符
2.2 使用 Getter 和 Setter 方法
3. 继承
3.1 继承的基本用法
3.2 方法重写
4. 多态
4.1 编译时多态方法重载
4.2 运行时多态方法重写
5. 面向对象编程的优势
总结与后续 Java 面向对象编程OOP
面向对象编程Object-Oriented Programming, OOP是 Java 语言的核心思想之一。OOP 提供了一种以对象为中心的编程方式使得代码更加模块化、可重用且易于维护。本模块将介绍 Java 中的 OOP 基本概念包括 类与对象、继承、封装、多态并通过代码示例帮助你掌握这些核心概念。
1. 类与对象
类Class是对象的模板或蓝图它定义了对象的属性和行为。对象Object是类的实例是类的具体实现。
1.1 类的定义
类是 Java 程序的基本组成部分用于定义对象的属性和行为。
示例
public class Car {// 属性成员变量String color;int speed;// 方法行为void start() {System.out.println(汽车启动);}void stop() {System.out.println(汽车停止);}
}
在这个例子中Car 类有两个属性color 和 speed以及两个方法start() 和 stop()。
1.2 对象的创建与使用
通过 new 关键字可以创建类的对象然后通过对象调用类的方法或访问属性。
示例
public class Main {public static void main(String[] args) {// 创建 Car 类的对象Car myCar new Car();myCar.color 红色;myCar.speed 100;// 调用对象的方法myCar.start();System.out.println(汽车颜色: myCar.color);myCar.stop();}
}
在这个例子中我们创建了 Car 类的对象 myCar并设置了属性 color 和 speed然后调用了 start() 和 stop() 方法。
2. 封装
封装Encapsulation是一种将数据和操作数据的方法捆绑在一起的机制目的是隐藏类的内部细节只对外暴露必要的接口。这有助于提高代码的安全性和可维护性。
2.1 访问修饰符
Java 提供了访问修饰符来实现封装 public类、方法或属性对所有代码可见。 private类的成员只能在该类内部访问无法从外部访问。 protected类的成员可以被同一包中的其他类或其子类访问。 默认无修饰符类的成员可以被同一包中的其他类访问。
2.2 使用 Getter 和 Setter 方法
为了实现封装我们通常将属性设置为 private并通过 public 的 getter 和 setter 方法来访问和修改属性。
示例
public class Person {// 私有属性private String name;private int age;// Getter 方法public String getName() {return name;}// Setter 方法public void setName(String name) {this.name name;}public int getAge() {return age;}public void setAge(int age) {if (age 0) {this.age age;} else {System.out.println(年龄必须大于 0);}}
}
在这个例子中name 和 age 是私有的外部不能直接访问它们。通过 getName() 和 setName()可以安全地访问和修改 name。
3. 继承
继承Inheritance是面向对象编程的重要特性用于创建一个新类该新类可以继承现有类的属性和方法。通过继承可以实现代码重用。
3.1 继承的基本用法 extends 关键字用于声明一个类继承另一个类。 父类超类被继承的类。 子类继承父类的类。
示例
// 父类
public class Animal {void eat() {System.out.println(动物在吃东西);}
}// 子类
public class Dog extends Animal {void bark() {System.out.println(狗在叫);}
}public class Main {public static void main(String[] args) {Dog myDog new Dog();myDog.eat(); // 调用继承自父类的方法myDog.bark(); // 调用子类的方法}
}
在这个例子中Dog 类继承了 Animal 类因此 Dog 类可以使用 Animal 类的 eat() 方法。
3.2 方法重写
方法重写Method Overriding是子类提供对从父类继承的方法的具体实现。 使用 Override 注解标记重写的方法。 子类可以提供自己的实现来覆盖父类的方法。
示例
public class Dog extends Animal {Overridevoid eat() {System.out.println(狗在吃狗粮);}
}
在这个例子中Dog 类重写了 Animal 类的 eat() 方法。
4. 多态
多态Polymorphism是 OOP 的另一个重要特性它允许相同的操作作用于不同的对象。多态的实现有两种方式编译时多态方法重载和运行时多态方法重写。
4.1 编译时多态方法重载
方法重载Method Overloading是在同一个类中定义多个方法这些方法具有相同的名字但参数不同参数类型或参数个数不同。
示例
public class MathUtils {// 方法重载int add(int a, int b) {return a b;}double add(double a, double b) {return a b;}
}
在这个例子中add() 方法被重载了分别用于处理整数和浮点数的相加。
4.2 运行时多态方法重写
运行时多态通过方法重写实现父类的引用可以指向子类的对象调用的方法根据引用指向的对象类型来确定。
示例
public class Main {public static void main(String[] args) {Animal myAnimal new Dog(); // 父类引用指向子类对象myAnimal.eat(); // 调用 Dog 类的 eat() 方法}
}
在这个例子中虽然 myAnimal 的类型是 Animal但它指向 Dog 对象因此调用的是 Dog 类的 eat() 方法。
5. 面向对象编程的优势 模块化将功能封装在类中使代码更加模块化。 代码重用通过继承和组合可以重用已有的代码。 灵活性和可维护性通过多态和接口可以更灵活地扩展代码提高可维护性。
总结与后续
在本模块中我们学习了 Java 的面向对象编程概念包括类与对象、封装、继承和多态。这些概念是 Java 编程的重要基础使得代码更加结构化和可维护。
在下一模块中我们将深入探讨 Java 中的 抽象类 和 接口学习如何通过抽象和接口提高代码的灵活性和复用性进一步掌握 Java 的面向对象特性。