栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java入门学习笔记(五)Static

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java入门学习笔记(五)Static

1.​​静态资源是随着类加载而加载到内存中的,比对象优先进入内存
所以静态资源可以通过类名直接调用,即使没有创建对象也可以调用

package review.learn;

public class TestStatic2 {
    public static void main(String[] args) {
        System.out.println(Teacher.id);
        Teacher.ready();
    }
}
class Teacher{
    String name;
    static int id;

    public void teach(){
        System.out.println("teaching!");
    }
    public static void ready(){
        System.out.println("preparing!");
    }
}

上述name和teach函数没有用static修饰,所以要先定义对象才能调用

static修饰过的可以直接用类调用,不需要再定义对象

2.静态资源不能调用普通资源,但普通资源可以调用静态

3.多态
  1. 多态的前提1:是继承
  2. 多态的前提2:要有方法的重写
  3. 父类引用指向子类对象,如:Animal a = new Cat();
  4. 多态中,编译看左边,运行看右边

package practise;

public class SelfTest {
    public static void main(String[] args) {
        Car c1=new Car();
        System.out.println(c1.getBrand());

        c1.stop();
        c1.start();

        BMW b=new BMW();
        System.out.println(b.color+ b.color);
        System.out.println(b.getName());//子类继承,可以查看父类成员变量
        b.start();//子类里面有,所以执行子类的
        b.stop();//子类没有,执行父类的

        
        Car c2=new Tesla();//多态,左边父类,右边子类,
        c2.start();//子类没有,执行父类的
        c2.stop();//执行tesla
        System.out.println(c2.getBrand());//子类没有 执行父类的
    }
}
class Car{
    private String brand;
    private String name;
    private double price;
    private int id;
    public void start(){
        System.out.println("let's get started!");
    }
    public void stop(){
        System.out.println("let's stop!");
    }

    public String getBrand() {
        return brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }
}
class BMW extends  Car{
    String color="莫名其妙的黑";
    @Override
    public void start(){
        System.out.println("get away i am bmw, i am gonna take off!");
    }
//    public void stop(){
//        System.out.println("oh my god!i am too fast!i cannot stop!");
//    }
}
class Tesla extends Car{
    @Override
    public void stop(){
        System.out.println("oh my god!i am too fast!i cannot stop!");
    }
    public void swim(){
        System.out.println("i can also swim how cool am i!");
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/329076.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号