【详细+超基础】Java-学习笔记 06
发布日期:2021-04-30 21:12:16 浏览次数:91 分类:精选文章

本文共 9310 字,大约阅读时间需要 31 分钟。

Java??????????

???Java???????????????????????????????????????????????????????????????????????????????????????????????????????????????????Java???????


???????

1.1 ?????

??????????????????????????????????????????????????????????????????????????????????????????????????

1.2 ???????

?Java??????extends??????????????

class ?? extends ?? {
// ?????
}

?????

public class Fu {   // ??
public void show() { // ????
System.out.println("show?????");
}
}
public class Zi extends Fu { // ??
public void method() { // ????????
System.out.println("method?????");
}
}
public class Demo { // ???
public static void main(String[] args) {
Fu f = new Fu(); // ??????
f.show(); // ??????
Zi z = new Zi(); // ??????
z.method(); // ??????
z.show(); // ???????????
}
}

1.3 ????????

?????

  • ???????????????????????????????????
  • ????????????????????????????????????????
  • ?????

  • ??????????????????????????????????????????
  • ?????????????????????????????????
  • 1.4 ???????

    ???????????????????????????????????

    • is-a??????Student?Teacher???Person????Person???????
    • has-a????????Car??????Engine???Car??????Vehicle?????

    ????????????

    ?Java???????????????????????????

    2.1 ??????????

    ??????????????????????

  • ??????????????????
  • ??????????????????????
  • ????????????????????????
  • ???????????
  • ?????

    class Fu {   // ??
    int num = 10; // ????
    }
    class Zi { // ??
    int num = 20; // ????
    public void show() {
    int num = 30; // ??????
    System.out.println(num); // ??30
    }
    }
    public class Demo1 {
    public static void main(String[] args) {
    Zi z = new Zi();
    z.show(); // ????????30
    }
    }

    2.2 super???

    super?this????????????????

    • super??????????????????????????
    • this??????????????????????????

    super?????

  • ?????
    • this.???????????????
    • super.???????????????
  • ?????
    • this.???????????????
    • super.???????????????
  • ?????
    • this(??)???????????
    • super(??)???????????
  • ?????

    public class Fu {
    public void show() {
    System.out.println("Fu?show()?????");
    }
    }
    public class Zi extends Fu {
    @Override
    public void show() {
    System.out.println("Zi?show()?????");
    super.show(); // ?????show??
    }
    }
    public class Demo {
    public static void main(String[] args) {
    Zi z = new Zi();
    z.show(); // ??Zi?show()?????
    }
    }

    2.3 ????????????

    ?????????????????????????????????????????????super()????????????????????????????????

    ?????

    public class Fu {
    public Fu() {
    System.out.println("Fu???????");
    }
    public Fu(String name, int age) {
    System.out.println("Fu???????");
    }
    }
    public class Zi extends Fu {
    public Zi() {
    super(10, 20); // ?????????????
    System.out.println("Zi?????");
    }
    }
    public class Demo {
    public static void main(String[] args) {
    Zi z = new Zi();
    System.out.println("Zi?????");
    }
    }

    2.4 ????????????

    ???????????????????????

  • ??????????????????
  • ??????????????????????
  • ???????????
  • ?????

    public class Fu {
    private void show() {
    System.out.println("Fu?show()?????");
    }
    }
    public class Zi extends Fu {
    @Override
    public void show() {
    System.out.println("Zi?show()?????");
    }
    }
    public class Demo {
    public static void main(String[] args) {
    Zi z = new Zi();
    z.show(); // ??Zi?show()?????
    }
    }

    2.5 ????

    ???????

    ????????????????????????????????????????????????????????????????

    ?????????

    • ??????????????
    • ??????????????????????????

    ???@Override???

    ?Java??@Override???????????????????????????@Override??????

  • ?????????????????
  • ??????????????
  • ?????

    public class Fu {
    public void show() {
    System.out.println("Fu?show()?????");
    }
    }
    public class Zi extends Fu {
    @Override
    public void show() {
    System.out.println("Zi?show()?????");
    }
    }
    public class Demo {
    public static void main(String[] args) {
    Zi z = new Zi();
    z.show(); // ??Zi?show()?????
    }
    }

    ?????????

    3.1 Java?????

    Java?????????????????

    class A extends B, C {   // ???Java??????
    }

    3.2 ????

    Java??????????

    public class Granddad {   // ???
    public void drink() {
    System.out.println("?????");
    }
    }
    public class Father extends Granddad { // ??????????
    public void smoke() {
    System.out.println("?????");
    }
    }
    public class Mother { // ???
    public void dance() {
    System.out.println("?????");
    }
    }
    public class Son extends Father { // ??????????
    // ?????????drink()?smoke()??
    }

    3.3 final??

    final??????????????????????

  • ???????????????????
  • ???????????????
  • ?????????????????????
  • ?????

    public final class Person {   // ?????
    private String name;
    private int age;
    public Person(String name, int age) {
    this.name = name;
    this.age = age;
    }
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public int getAge() {
    return age;
    }
    public void setAge(int age) {
    this.age = age;
    }
    }
    public class Student extends Person { // ?????Person?
    public Student(String name, int age) {
    super(name, age);
    }
    public void study() {
    System.out.println("?????");
    }
    }

    3.4 static??

    static????????????????????????????????

    ?????

    public class Student {
    public static String university; // ????
    private String name;
    private int age;
    public Student(String name, int age) {
    this.name = name;
    this.age = age;
    }
    public void show() {
    System.out.println(name + "," + age + "," + university);
    }
    }
    public class Demo {
    public static void main(String[] args) {
    Student.university = "??????";
    Student s1 = new Student("???", 18);
    s1.show();
    Student s2 = new Student("??", 17);
    s2.show();
    }
    }

    3.5 static????

    static????????????????????

  • ????????????static????????
  • ???????????static????????
  • ?????

    public class Student {
    public static String university; // ????
    private String name;
    private int age;
    public Student(String name, int age) {
    this.name = name;
    this.age = age;
    }
    public void show() {
    System.out.println(name + "," + age + "," + university);
    }
    }
    public class Demo {
    public static void main(String[] args) {
    Student.university = "??????";
    Student s1 = new Student("???", 18);
    s1.show();
    Student s2 = new Student("??", 17);
    s2.show();
    }
    }

    ??????

    4.1 ?????

    ?????

  • ??Teacher??Student?????????????????
  • ???????????????????
  • ??????????????????
  • ?????

  • ??Person????????
    class Person {
    private String name;
    private int age;
    public Person(String name, int age) {
    this.name = name;
    this.age = age;
    }
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public int getAge() {
    return age;
    }
    public void setAge(int age) {
    this.age = age;
    }
    }
  • ??Teacher??
    class Teacher extends Person {
    public Teacher(String name, int age) {
    super(name, age);
    }
    public void teach() {
    System.out.println("?????");
    }
    }
  • ??Student??
    class Student extends Person {
    public Student(String name, int age) {
    super(name, age);
    }
    public void study() {
    System.out.println("?????");
    }
    }
  • ?????
    public class PersonDemo {
    public static void main(String[] args) {
    // ????????????
    Teacher t1 = new Teacher("???", 18);
    t1.setName("???"); // ????
    t1.setAge(18); // ????
    System.out.println(t1.getName() + "," + t1.getAge());
    t1.teach(); // ???????
    // ????????????
    Student s = new Student("??", 17);
    System.out.println(s.getName() + "," + s.getAge());
    s.study(); // ???????
    }
    }
  • 4.2 ???

    ?????

  • ??Cat??Dog?????????????????
  • ???????Animal??
  • ????Cat?Dog???Animal??????????
  • ?????

  • ??Animal????????
    class Animal {
    private String name;
    private int age;
    public Animal(String name, int age) {
    this.name = name;
    this.age = age;
    }
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public int getAge() {
    return age;
    }
    public void setAge(int age) {
    this.age = age;
    }
    }
  • ??Cat??
    class Cat extends Animal {
    public Cat(String name, int age) {
    super(name, age);
    }
    public void catchMouse() {
    System.out.println("????");
    }
    }
  • ??Dog??
    class Dog extends Animal {
    public Dog(String name, int age) {
    super(name, age);
    }
    public void lookDoor() {
    System.out.println("???");
    }
    }
  • ?????
    public class AnimalDemo {
    public static void main(String[] args) {
    // ???????????
    Cat c1 = new Cat();
    c1.setName("?");
    c1.setAge(5);
    System.out.println(c1.getName() + "," + c1.getAge());
    c1.catchMouse();
    // ???????????
    Dog d1 = new Dog("?", 6);
    System.out.println(d1.getName() + "," + d1.getAge());
    d1.lookDoor();
    }
    }

  • ????

    ????????????Java??????????????????????????????????????????????????????????????????????????????????????????????Java?????????????????????????????

    上一篇:SpringBoot中使用注解来实现 Redis 分布式锁
    下一篇:2021最详细的MySQL数据库入门学习路线(附学习资料)

    发表评论

    最新留言

    逛到本站,mark一下
    [***.202.152.39]2026年06月02日 16时28分27秒