向上造型--方法重写--重写与重载的区别--package--import--final--static

本文介绍了面向对象编程中的关键概念,包括向上造型(父类引用指向子类对象)、方法重写(子类对父类方法的实现)以及包和import的使用。详细阐述了方法重写的规则,强调了重写与重载的区别,并探讨了权限修饰符final和static的作用。此外,还讨论了静态变量、静态方法和静态块的应用场景。
摘要由CSDN通过智能技术生成

标题向上造型–方法重写–重写与重载的区别–package–import–final–static

向上造型:---------还是进一步代码的复用

父类型引用指向子类对象

能点出来什么,看引用类型-------规则!

Persion p= new Student();

Persion p2= new Teacher();

Persion p3 = new Doctor();
//p/p2/p3,只能点出左边引用类型的,Persion类的属性和方法

方法重写:

​ 发生在父子类中,方法名相同,方法参数相同(即方法签名相同),但方法体不同!

重写方法被调用时,看对象的类型,----------规则!

重写遵循“俩同俩小一大”原则:

​ 俩同:方法名+参数

​ 俩小:子类返回值类型小于或等于父类 +子类抛出异常小于或等于父类

​ void+基本类型,就是等于

​ 引用类型,就是小于或者等于

​ 一大:子类方法的访问权限大于或等于父类的

public class Aoo {
    int a;
    void Memory1(){
        System.out.println("存个炒菜~~~~");
    }
}
public class Boo extends Aoo{
    int b;
   void Memory1(){
       super.Memory1();
       System.out.println("不想存炒菜!!!,存个西菜~");
    }
}

 public static void main(String[] args) {
       Aoo a= new Boo();
       a.Memory1();
    }

重写与重载的区别:

重写:只在父子类中,名字相同,参数相同,方法体不同;

重载:在同一类中,名字相同,参数不同,方法体不同;

package : 包机制:所有包名,建议都小写;

​ 类的全称:包名.类名

import:导入类

四大权限修饰符:------保护数据安全

​ public: 公共的,所有类中

public class test3 {
   public  int a;
}

protected:本类,子类,同包中

public class test3 {
   protected  int a;
}

​ private: 本类;

public class test3 {
   private  int a;
}

​ 默认的:本类,同包(不常用,不建议使用

public class test3 {
     int a;
}

final:最终的、不可改变的------------单独应用几率极低

  • 修饰变量:变量不能被改变

  • 修饰方法:方法不能被重写

  • 修饰类:类不能被继承

static:静态的

​ 静态变量:

  • 由static修饰
  • 属于类,存储在方法区中,只有一份
  • 常常通过类名点来访问
  • 何时用:所有对象所共享的数据(图片、音频、视频等)

静态方法:

  • 由static修饰
  • 属于类,存储在方法区中,只有一份
  • 常常通过类名点来访问
  • 静态方法中没有隐式this传递,不能直接访问实例成员
  • 何时用:方法的操作与对象无关

静态块:

  • 由static修饰
  • 属于类,在类被加载期间自动执行,一个类只被加载一次,所以静态块只执行一次
  • 何时用:加载/初始化静态资源(图片、音频、视频等)

static final常量:
必须声明同时初始化
类名点来访问,不能被改变
建议:常量名所有字母都大写,多个单词用_分隔
编译器在编译时会将常量直接替换为具体的数,效率高
何时用:数据永远不变,并且经常使用

    public static int num = 5; //静态变量
    public static final int COUNT = 5; //常量
}
class Aoo{
    public static final double PI = 3.14159;
    //public static final int NUM; //编译错误,常量必须声明同时初始化
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值