Java全面细致讲解类与对象攻略
什么是类与对象
类是一种数据结构,用于表示一个抽象的概念。对象是类的一个实例,是一个具体的实体。例如,汽车是一个类,它可以表示汽车的共性,而一辆具体的汽车则是这个类的一个对象,它具有颜色、型号、品牌等具体的属性。
如何定义类
要定义一个类,需要使用关键字class
,后面跟上类的名称以及一对大括号{}
,在大括号中可以定义类的属性和方法。类的属性用于表示类的数据,而方法用于表示类的行为。
public class Car {
String brand;
String model;
int year;
public void start() {
System.out.println("The car is starting.");
}
}
在上面的代码中,我们定义了一个Car
类,它有三个属性brand
、model
、year
,表示汽车的品牌、型号和生产年份。还定义了一个方法start()
,用于启动汽车。
如何使用类创建对象
要使用类创建对象,需要使用new
关键字,后面跟上类的名称和一对小括号()
。在小括号中可以传入参数,用于初始化对象的属性。
public class Main {
public static void main(String[] args) {
Car car = new Car();
car.brand = "Honda";
car.model = "Civic";
car.year = 2020;
car.start();
}
}
在上面的代码中,我们创建了一个Car
对象car
,并为它的属性赋值。然后调用了start()
方法,启动了这辆汽车。
面向对象的三大特征
面向对象编程有三大特征:封装、继承、多态。
封装
封装是指将数据和操作数据的方法包装在一起,同时保护数据不被外界直接访问和修改。使用private
关键字可以将属性和方法设为私有,只能在类内部访问和修改。
public class Person {
private String name;
private int age;
public void setName(String name) {
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
在上面的代码中,我们定义了一个Person
类,其中name
和age
都是私有属性,只能通过setName()
和setAge()
方法进行设置,通过getName()
和getAge()
方法进行获取。
继承
继承是指子类可以继承父类的属性和方法,并且可以添加自己的属性和方法。使用关键字extends
可以实现继承。
public class Student extends Person {
private String school;
public void setSchool(String school) {
this.school = school;
}
public String getSchool() {
return school;
}
}
在上面的代码中,我们定义了一个Student
类,它继承自Person
类,并添加了一个school
属性和setSchool()
、getSchool()
方法。
多态
多态是指可以使用一个父类类型的变量来引用一个子类类型的对象。这样可以在不知道实际对象类型的情况下,调用相应的方法。使用方法重写和方法重载可以体现多态。
public class Animal {
public void speak() {
System.out.println("An animal is speaking.");
}
}
public class Dog extends Animal {
@Override
public void speak() {
System.out.println("A dog is barking.");
}
}
public class Cat extends Animal {
@Override
public void speak() {
System.out.println("A cat is meowing.");
}
}
public class Main {
public static void main(String[] args) {
Animal animal1 = new Dog();
Animal animal2 = new Cat();
animal1.speak();
animal2.speak();
}
}
在上面的代码中,我们定义了一个Animal
类和两个子类Dog
、Cat
,它们都有一个speak()
方法。在Main
类中,我们创建了两个Animal
对象,但是它们分别被初始化为Dog
和Cat
类型。调用它们的speak()
方法时,会分别调用Dog
和Cat
类中的speak()
方法,并打印不同的信息,说明了多态的特性。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java全面细致讲解类与对象 - Python技术站