Java之路---Day13

Java之路—Day13
2019-10-28-22:40:14

目录

1.Instanceof关键字

2.Final关键字

2.1Final关键字修饰类

2.2Final关键字修饰成员方法
    2.3Final关键字修饰局部变量
    2.4Final关键字修饰成员变量

3.权限修饰符

Instanceof关键字
  作用:判断一个父类引用的对象是什么子类
  格式:
    对象名 instanceof 类名称

 1 package demosummary.instanceoftest;
 2 
 3 public class Test {
 4     public static void main(String[] args) {
 5         //创建一个Dog对象
 6         Animal animal = new Dog();
 7         //如果希望调用子类特有方法,需要向下转型
 8         //判断一下父类引用animal本来是不是Dog
 9         if (animal instanceof Dog){
10             animal.setName("来福");
11             Dog dog =  (Dog)animal;
12             dog.skill();
13         }
14 
15     }
16 }

Final关键字
  意义:final关键字代表最终,不可改变的
  常见四种用法:   
    1.可以用来修饰一个类
    2.可以用来修饰一个方法,
    3.还可以用来修饰一个局部变量
    4.还可以用来修饰一个成员变量
  Final关键字修饰类
    格式:
      public final class 类名称{
        语句体;
      }
    含义:当前这个类不能有任何子类,而且成员方法都无法进行覆盖重写(因为没有子类)

1 public final c1ass MyClass /*extends object*/ {
2     public void method() {
3         System.out.print1n( "方法执行!");
4     }
5 }

Final关键字修饰成员方法
    当final关键宇用来修饰一个方法的时候,这个方法就是最终方法,也就是不能被覆盖重写。
    格式:
      修饰符 final 返回值类型 方法名称(参数列表) {
        // 方法体
      }
    注意事项:1、对于类、方法来说,abstract关键字和final关键字不能同时使用,因为矛盾。

public abstract class Fu {
    public final void method() {
        System.out.printIn("父类方法执行!");
    }
    public abstract /*final*/ void methodAbs() ; 
}

Final关键字修饰局部变量
    作用:一旦使用final来修饰局部变量,那么这个变量就不能进行修改(一次赋值,终生不变)
    注意事项:
      1.对于基本类型来说,不可变说的是变量当中的数据不可改变
      2.对于引用类型来说,不可变说的是变量当中的地址值不可改变
  Final关键字修饰成员变量   
    作用:对于成员变量来说,如果使用final关键字修饰,那么这个变量也照样是不可变。
      1.由于成员变量具有默认值,所以用了final之后必须手动赋值,不会再给默认值了。
      2.对于final的成员变量,要么使用直接赋值,要么通过构造方法赋值。二者选其一。
      3.必须保证类当中所有重载的构造方法,都最终会对final的成员变量进行赋值。
权限修饰符
  Java中有四种权限修饰符:
          public > protected > ( default) > private
同一个类(我自己)  YES  YES    YES   YES
同一个包(我邻居)  YES  YES    YES   NO
不同包子类(我儿子) YES  YES    NO    NO
不同包非子类(陌生人 YES  NO     NO    NO
  注意事项: (default)并不是关键字“defoult",而是根本不写。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值