学习java面向对象第四天:方法的重写,重写与重载的区别、package和import、访问控制修饰符、static

本文详细介绍了Java中的方法重写、重载的区别,以及package和import的使用。接着讨论了访问控制修饰符的作用,特别是public、private、protected和默认修饰符的含义。此外,还深入讲解了static关键字在静态变量、静态方法和静态初始化块中的应用,以及Java内存管理的基本概念。
摘要由CSDN通过智能技术生成

1.方法的重写(override/overriding):重新写、覆盖

  • 发生在父子类中,方法名相同,参数列表相同
  • 重写方法被调用时,看对象的类型
    (当派生类觉得超类的行为不够好时,可以重写)
我继承了一个中餐馆
class Aoo{
   
    void do(){
   
        做中餐
    }
}
A:我还是想做中餐------------不需要重写
    class Boo extends Aoo{
   
    }
B:我想改做西餐--------------需要重写
    class Boo extends Aoo{
   
        void do(){
   
            做西餐
        }
    }
C:我想在中餐基础之上加西餐-----需要重写(super中餐,再加入西餐)
    class Boo extends Aoo{
   
        void do(){
   
            super.do();
            做西餐
        }
    }

2.重写与重载的区别:重点(常见面试题)

  • 重写:发生在父子类中,方法名相同,参数列表相同
    (一般用于在派生类中修改超类的方法)

  • 重载:发生在同一类中,方法名相同,参数列表不同
    (是完全不同的方法,只是方法名相同而已)

3.package和import

  • package:声明包
    作用:避免类的命名冲突
    同包中的类不能同名,不同包中的类可以同名
    类的全称:包名.类名,包名常常有层次结构
    建议:包名所有字母都小写
    (说明:package声明必须位于第一行)

  • import:导入类
    同包中的类可以直接访问,不同包的类不能直接访问,若想访问:
    先import导入类,再访问类------建议
    类的全称-----------------------------太繁琐,不建议
    (说明:import导入类必须位于声明包的下一行)

4.访问控制修饰符

(封装的意义:隐藏一些东西,暴露一些东西,来保护数据的安全)

  • public:公开的,任何类
  • private:私有的,本类
  • protected:受保护的、本类、派生类、同包类
  • 默认的:什么也不写,本类、同包类
    【1】类的访问权限只能是public或默认的
    【2】类的成员的访问权限如上四种都可以
//封装的意义
class Card{
   
    private String cardId;
    private String cardPwd;
    private double balance;
    
    public boolean payMoney(double money)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值