目录
1.类和对象
类是Java中的基本编程单元,用于封装数据和方法。对象是类的实例,可以使用类中定义的方法和访问类中定义的数据。
下面是一个简单的示例:
public class Dog {
String name;
int age;
public void bark() {
System.out.println("汪汪!");
}
}
在这个示例中,定义了一个名为Dog的类,包含了两个属性name和age,以及一个方法bark。我们可以创建Dog类的实例,即对象:
Dog dog = new Dog();
我们可以给对象的属性赋值:
dog.name = "旺财";
dog.age = 2;
也可以调用对象的方法:
dog.bark();
在这个例子中,创建了一个名为dog的Dog对象,给其属性name和age赋值,并调用了其方法bark,输出"汪汪!"。
2.继承
继承是Java中面向对象编程的一个重要特性,它允许一个类继承另一个类的属性和方法,并可以在此基础上进行扩展。
下面是一个简单的示例:
public class Animal {
String name;
int age;
public void eat() {
System.out.println("动物在吃东西");
}
}
public class Dog extends Animal {
public void bark() {
System.out.println("汪汪!");
}
}
在这个示例中,定义了一个名为Animal的类,包含了两个属性name和age,以及一个方法eat。我们还定义了一个名为Dog的类,它继承了Animal类,并增加了一个方法bark。
可以创建Dog类的实例:
Dog dog = new Dog();
我们可以给对象的属性赋值:
dog.name = "旺财";
dog.age = 2;
也可以调用对象的方法:
dog.eat();
dog.bark();
在这个例子中,创建了一个名为dog的Dog对象,给其属性name和age赋值,并调用了其继承自Animal类的方法eat,以及自身的方法bark。
3.多态
多态是Java中面向对象编程的另一个重要特性,它允许不同的对象调用相同的方法,产生不同的行为。
下面是一个简单的示例:
public class Animal {
public void eat() {
System.out.println("动物在吃东西");
}
}
public class Dog extends Animal {
public void eat() {
System.out.println("狗在吃骨头");
}
}
public class Cat extends Animal {
public void eat() {
System.out.println("猫在吃鱼");
}
}
在这个示例中,定义了一个名为Animal的类,包含了一个方法eat。我们还定义了两个类,分别为Dog和Cat,它们都继承自Animal类,并覆盖了eat方法。
可以创建Animal、Dog和Cat类的实例:
Animal animal = new Animal();
Dog dog = new Dog();
Cat cat = new Cat();
可以调用它们的eat方法:
animal.eat(); // 输出"动物在吃东西"
dog.eat(); // 输出"狗在吃骨头"
cat.eat(); // 输出"猫在吃鱼"
在这个例子中,可以看到不同的对象调用相同的方法eat,产生了不同的行为,这就是多态的体现。
4.抽象类和接口
抽象类和接口是Java中面向对象编程的另外两个重要概念。
抽象类是一个不能被实例化的类,它定义了一些抽象方法,这些方法没有实现,需要在子类中实现。抽象类可以包含成员变量、普通方法和抽象方法。
下面是一个简单的示例:
public abstract class Animal {
String name;
int age;
public abstract void eat();
public void sleep() {
System.out.println("动物在睡觉");
}
}
public class Dog extends Animal {
public void eat() {
System.out.println("狗在吃骨头");
}
}
在这个示例中,定义了一个抽象类Animal,它包含了两个属性name和age,以及一个抽象方法eat和一个普通方法sleep。我们还定义了一个名为Dog的类,它继承自Animal类,并实现了eat方法。
接口是一组抽象方法的集合,它定义了一些方法,但没有实现,需要在实现接口的类中实现。接口可以看做是一种规范,它规定了实现类必须实现哪些方法。
下面是一个简单的示例:
public interface Animal {
void eat();
void sleep();
}
public class Dog implements Animal {
public void eat() {
System.out.println("狗在吃骨头");
}
public void sleep() {
System.out.println("狗在睡觉");
}
}
在这个示例中,定义了一个接口Animal,它包含了两个方法eat和sleep。还定义了一个名为Dog的类,它实现了Animal接口,并实现了eat和sleep方法。