java-1

黑马程序员

cmd命令

image

Java入门到精通

6. 类和对象

1.this主要是用来代替当前类方法中的本体,方便操作
区分变量:使用 this 可以区分实例变量和局部变量。
方法调用:可以调用当前对象的其他方法。
构造器链:可以在构造方法中调用其他构造方法。
参数传递:可以将当前对象作为参数传递给其他方法。
2.静态变量和静态方法
静态变量类似于锁具有共享和可修改的特点。
静态方法:
可以通过类名直接调用,不用创建类的实例。
不能直接访问实例变量和实例方法。
可以访问同一类的静态变量和其他静态方法。

7. 继承、多态、抽象类与接口

1.子类继承父类使用extends关键词,父类的一般方法可以被子类添加@Override关键词重写,而构造方法则需要使用super关键词访问。
super(); // 调用父类构造方法,然后写自己的构造方法内容?
2.对象之间的类型转换(子类父类)
向上转型:父类new子类,相同的方法还是用子类的?
向下转型:需要符合子类,要强制类型转换,用instanceof关键词检查
使用场景:不同的子类放入同一个父类的数组,对每个子类进行不同的处理
3.方法重载:函数名相同,主要是关注变量类型,个数,顺序。
4.final和record关键词
final 关键字:
用于限制类、方法和变量的修改。
final 类不能被继承,final 方法不能被重写,final 变量值不可变。
record 关键字:
简化不可变数据类的创建。
自动生成构造方法、访问器、equals()、hashCode() 和 toString() 方法。
记录类的字段是 final,一旦赋值后不能修改。
5.多态:是指同一接口可以有多种不同的实现方式。
同一个函数名不同实现,主要是两种方法:方法重载和方法重写。
方法重载:在一个类中,父类

点击查看代码
class MathUtils {
    // 方法重载
    int add(int a, int b) {
        return a + b;
    }
    double add(double a, double b) {
        return a + b;
    }
}

方法重写:在多个子类中实现
子类继承父类后,想要实现自己的方法,则添加@Override重写方法。
6.抽象类

点击查看代码
// 定义抽象类
abstract class Shape {
    // 抽象方法
    abstract void draw(); // 没有方法体

    // 非抽象方法
    void display() {
        System.out.println("这是一个形状");
    }
}

// 子类实现抽象类
class Circle extends Shape {
    @Override
    void draw() {
        System.out.println("画一个圆");
    }
}

class Rectangle extends Shape {
    @Override
    void draw() {
        System.out.println("画一个矩形");
    }
}

// 使用示例
public class Main {
    public static void main(String[] args) {
        Shape circle = new Circle();
        Shape rectangle = new Rectangle();

        circle.draw(); // 输出: 画一个圆
        rectangle.draw(); // 输出: 画一个矩形
        circle.display(); // 输出: 这是一个形状
    }
}
7.接口:只实现方法
点击查看代码
interface Animal{
	void set():
	void sound():
}
使用implements关键词继承使用,和@Override关键词重写接口里面的抽象方法 `class Dog implements Animal` 其中Java 8 引入了默认方法和静态方法,增强了接口的功能。 相较于抽象类,就是功能更单纯一点,更简洁。 看不懂再补充!希望能做到3天一复习,7天一小节。
posted @ 2025-03-03 16:59  keepsoft123  阅读(5)  评论(0)    收藏  举报