Java基础笔记(2)

本文介绍了Java编程中的核心概念,包括类与对象的创建和使用,如属性和方法的定义;类的继承,允许子类从父类继承属性和方法;多态性,展示了不同对象调用相同方法产生不同行为的特性;以及抽象类和接口,作为抽象和规范的定义工具。
摘要由CSDN通过智能技术生成

目录

1.类和对象

2.继承

3.多态

4.抽象类和接口


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方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值