包和final、权限修饰符和代码块(超详细)

包和final、权限修饰符和代码块(超详细)

一:包和final

(1)什么是包?

包就是文件夹。用来管理各种不同功能的Java类,方便后期代码维护

(2)包名的规则?

公司域名反写 + 包的作用,需要全部英文小写,见名知意。com.itheima.domain

全类名/全限定名:com.itheima.domain.Student

(3)使用其他类的规则?

使用其他类时,需要使用全类名

public class Test {
   
    public static void main (String[] args) {
   
        com.itheima.domain.Student s = new com.itheima.domain.Student();
    }
}

但是这样写很麻烦,所以java有了import关键字。我们可以把类的全类名写在import关键字后面,那就表示,如果在本来中使用到Student,那么就是com.itheima.damain包下的

import com.itheima.domain;
public class Test {
   
    public static void main (String[] args) {
   
        Student s = new Student();
    }
}

(4)使用其他类的规则?

1、使用同一个包中的类时,不需要导包

2、使用java.lang包中的类时,不需要导包

3、其他情况都需要导包

4、如果同时使用两个包中的同类名,需要使用全类名

(5)小结

1、包的作用?

包就是文件夹,用来管理各种功能不同的Java文件

2、包名书写规则?

公司域名反写 + 包的作用,需要全部英文小写,见名只意

3、什么是全类名?

包名+ 类名

4、什么时候需要导包?什么时候不需要导包?

1、使用同一个包中的类时,不需要导包

2、使用java.lang包中的类时,不需要导包

3、其他情况都需要导包

4、如果同时使用两个包中的同类名,需要使用全类名

(6)final

final:最终的、不可被改变的

final修饰方法:表示该方法是最终方法,不能被重写

class Fu {
   
    public void show() {
   
        System.out.println("父类的show方法");
    }
}
class Zi extends  Fu {
   
    @Override
    public void show() {
   
        System.out.println("子类的show方法");
    }
}
// 上面这样写没问题
// 下面这样写子类里面编译报错
class Fu {
   
    public final void show() {
   
        System.out.println("父类的show方法");
    }
}
class Zi extends  Fu {
   
    @Override
    public void show() {
   
        System.out.println("子类的show方法");
    }
}

如果当前方法是一种规则,这个规则我不希望别人去改变,这个时候就可以用final修饰。比如在Object中就有方法是这么设计的,ctrl + n搜索Object,里面的getClass()方法就是final修饰的&

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值