JavaSE的一些笔记。只为自己翻阅。

🍻🍻🍻小白终于出新手村了。🍻🍻🍻

👑final关键字

  1. final是Java语言中当一个关键字
  2. final表示最终的,不可变的。
  3. final可以修饰变量以及方法,方法还有类等。
  4. final修饰的变量?
  5. final修饰的方法?
    final修饰的类无法覆盖、重写
  6. final修饰的类?
    final修饰的类无法继承
  7. final控制不了能不能调用的问题。final管的是啥?
    final修饰的表示最后的,不能变的,不能改的。

final修饰的类无法继承


final修饰的类无法覆盖、重写

class C{
	public final void doSome(){
	System.out.println("1");
}
}
class D ectends C{
	public final void doSome(){
	System.out.println("1");
}
}
//就报错,D中的doSome()无法覆盖C中的doSome(),被覆盖的方法为final

final修饰的局部变量,只能赋一次值


final修饰引用

  1. 该引用只能指向1个对象,并且它永远指向该对象。
  2. 虽然final的引用指向对象A后,不能再重新指向对象B。
    但是对象A内部的数据可以改变。

在这里插入图片描述

public static void main(String[] args){
person p1 = new Person(20);
System.out.println(p1.age);

//代码不管怎么变化,p也是一个变量。(只不过这里它有个特殊的名字 引用)
final Person p = new Person(30);
//-------------------------
p = new Person(30) // 报错。无法为最终变量p分配值
p = null; //报错。无法为最红变量p分配值

//不能改变地址但是可以改变对象内的age值所以可以这样写↓
p.age = 40;
System.out.println(p.age);
//40
}

final修饰实例变量

系统不管赋默认值,要求程序员必须手动赋值。
实例变量在构造方法执行的过程中赋值(初始化)
系统在构造方法执行的时候才赋值。(new的时候赋值)

只要赶在系统默认值之前赋值。

class User{

final int age;//报错

final double height = 1.8;
//实例变量
final double weight;
public User(){
	this.weight = 80;
}
}

常量

static final联合修饰的变量称为常量。
实际上常量和静态变量一样,区别在于常量的值不能变。
常量和静态变量,都是储存在方法区,并且都是在类加载时初始化。

👑抽象类

👑接口

👑抽象类与接口的区别

👑Object类

👑package和import

👑访问权限控制

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值