java基础--final,static,包,访问权限

final

被final声明的属性其值通常是不可修改的,所以只有get方法,没有set方法。并且变量要大写,如下:

private final String COUNTRY="中国";
  1. 使用final声明的属性为常量,常量不可修改。
  2. final声明的类不能被继承。
  3. final声明的方法不能被子类重写。
static

static声明的属性为全局属性,多个对象共享同一个内存空间。
static声明的变量为静态变量,声明的方法为静态方法,静态变量和静态方法都是被该类所有对象所共享的。
static变量和static方法的调用:直接用类名调用,类名.变量名/类名.方法名,如

public class Person {
       private  static String name="wang";
}
Person.name;

注意:在静态方法中不能访问非静态变量和非静态方法,但是在非静态方法中可以访问静态变量和静态方法。

是在使用多个类或接口时,为了避免名称重复而采用的一种措施,类似于操作系统中的文件目录。
目的:

  1. 避免重名冲突。
  2. 实现访问权限控制。

声明方式:package 包名.子包名 .子子包名;包名必须采用小写英文字母。

包的导入

如果要在一个类中导入另一个包中的类,需用到import,例如

package testone;
import com.wang.Person;
public class Test {
    public static void main(String[] args) {
        Person p=new Person();
    }
}

表示在包testone的类Test中导入包com.wang中的类Person。

包的访问权限

-private:可以定义方法、属性,但都不能被类的外部看到
-default:可以在本包中的任意地方访问
-protected:保护,不同包的非子类不可以访问
-public:公共的,都可以访问,不受任何的限制

范围 private default protected public
同一类 可以 可以 可以 可以
同一包中的类 可以 可以 可以
不同包的子类 可以 可以
其它包中的类 可以
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,765评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,915评论 18 139
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 2,687评论 0 11
  • Win7下如何打开DOS控制台? a:开始--所有程序--附件--命令提示符 b:开始--搜索程序和文件--cmd...
    逍遥叹6阅读 1,614评论 4 12
  • 一、游戏本身所得。 1,做得比较好的是:判断应选择房产而不是股票作为第一桶金,第一次买的起的时候就投资了房子,...
    科幻2017阅读 194评论 1 0