今天开始面向对象了
面向对象基础
类:由属性和行为组成 属性:在类中通过成员变量来体现 行为:在类中通过成员方法来体现 public class 类名{ //成员变量 变量1的数据类型 变量1; 变量2的数据类型 变量2; ... //成员方法 方法1; 方法2; ... }
有几个重要的概念和特性需要了解。
类和对象
在Java中,类是描述具有相同属性和行为的对象的蓝图。通过定义类,可以创建 多个实例,即对象。对象是类的具体实现,并且可以使用其属性和方法来完成特 定的任务。
封装
封装是将数据和操作组合起来,以便通过类的接口访问它们。通过将数据字段隐 藏在类的内部,并提供公共方法来访问和修改数据,可以保护数据的完整性和安 全性。
继承
继承是指一个类获得另一个类的属性和方法。通过继承,子类可以重用父类的代 码,并且还可以添加自己的特定功能。在Java中,使用关键字extends实现继承 关系。
多态
多态是指一个对象可以表现出多种形态或类型。通过多态,可以使用统一的接 口来处理不同类型的对象,提高代码的可复用性和可拓展性。在Java中,多态 可以通过方法的重写和接口的实现来实现。
抽象类与接口
抽象类是无法被实例化的类,它可以包含抽象方法和非抽象方法。抽象方法只有 声明而没有具体实现,需要子类去实现。接口定义了一组方法的规范,任何类都 可以实现一个或多个接口。不同类之间通过继承抽象类或实现接口来共享代码 和行为。
除此之外还有其他一些与面向对象相关的概念,如构造函数、方法重载、访问修饰符等。理解这些基础知识也很重要。
代码示例
定义一个新的手机类并在这个类中使用。
public class crj { public static void main(String[] args) { Phone p = new Phone(); //使用成员变量 System.out.println(p.brand); System.out.println(p.price); p.brand = "小米"; p.price = 2999; System.out.println(p.brand); System.out.println(p.price); //使用成员方法 p.call(); p.sendPassage(); } }
新定义一个学生类,并在这个类中使用。
public class crj { public static void main(String[] args) { Student s = new Student(); //调用成员变量 s.name="高启强"; s.age=39; System.out.println(s.name+s.age); //调用成员方法 s.study(); s.doHomework(); } } public class Student { //成员变量 String name; int age; //private int age; public void setAge(int a) { // age = a; if (a < 0 || a > 120) { System.out.println("年龄有误"); } else { age = a; } } //成员方法 public void study() { System.out.println("好好学习"); } public void doHomework() { System.out.println("多加练习"); int j = 0; } public void show() { System.out.println(name + "," + age); } public String getName(){ return name; } public int getAge(){ return age; } }