一、Java中的访问权限有public、private、protected以及默认权限四种,以下是对这四种访问权限修饰符的一点比较:
public: 被public修饰的属性方法在任何情况下均可被调用。
protected: 同包内或者不同包的子类中均可调用。
默认: 只有同包中可被调用,不同于protected的重要一点就在于子类与父类不包 时不能被访问。
private: 只有同一个类中可被调用,即使同包的子类也不能访问。
由此可得出访问权限从高到低应该是:
public > protected > 默认 > private
另外需要注意的一点是,不能用private或者protected修饰类。
二、static与final关键字
近期在做画板和五子棋都有使用到这两个关键字,但具体的使用却不是那么清晰,昨天一课 之后也对这两个关键字做一个小结。
Static:可用来定义属性、方法。在程序中使用static声明的属性称为全局属性或者静态属性,static属性被所有的对象所共享。由于Static定义的属性或者方法先于类产生,在访问static属性时可以直接通过类名称调用,比如画图板中储存形状的队列使用static定义后,在其他类中的调用便是如此。
使用static声明的方法同样可以直接通过类名称调用,但要注意的一点是非static声明的方法可以调用static声明的属性或者方法,但static声明的方法不能调用非static声明的属性或方法。
public class Student {
private String name = "张飒";//非静态属性
public static void test(){//静态方法
System.out.println(" name = "+ name);//出错,不能调用非静态属性
fun(); //出错,不能调用非静态方法
}
public void fun(){//非静态方法
System.out.println("hello");
}
}
还有一个概念就是静态代码块,也就是使用static关键字声明的代码块,如下:
static{
}
在程序运行中静态代码块优先于main方法执行,且只执行一次。这是由于程序执行的过程是JVM>>>加载类(static)>>>执行(main ),所以在执行main方法前,会执行该类中定义的static代码块和初始化其中的static变量。
final相对而言没有那么复杂的特性,final关键字则可用来定义类、方法和属性。
正如final的英文含义所示,final定义的类不能有子类,声明的方法不可被子类覆写,定义的变量即是常量,不可再被修改。
一点需要注意的命名规则是:使用final声明变量时,字母要全部大写如:
public static final int MAX = 100;
以上便是Java关键字小结第一部分,在后面学习过程中会继续完善。。。
分享到:
相关推荐
this关键字的使用详细介绍:在JAVA程序中似乎经常见到“this”,自己也偶尔用到它,但是到底“this”该怎么用,却心中无数!很多人一提起它,就说“当前对象”,可到底什么是当前对象,是什么当前对象,他自己也不...
首先,理清几个概念:项目(project)、解决方案(solution)、程序集(assembly)、命名空间(namespace)。 项目(project) 就是我们开发的一个软件。.NET下,项目有多种类型,如控制台、Windows应用程序、类库...
主要介绍了Java的关键字与标识符,总结整理了Java各种常见的关键字与标识符功能、用法及操作注意事项,需要的朋友可以参考下
java集合中list、set、map等集合的介绍,集合在java中应用很重要
JAVA IO流小结JAVA IO流小结JAVA IO流小结
主要给大家总结介绍了关于SQL中一些小巧但常用的关键字,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
Java编程语言的一些比较重要的名词,和环境变量,如关键字,标识符,数据类型等等
Java 保留字列表 (依字母排序 共14组) : Java保留字是指现有Java版本尚未使用 但以后版本可能会作为关键字使用
本文重在Java中异常机制的一些概念。写本文的目的在于方便大家很长时间后若是忘了这些东西可以通过这篇文章迅速回忆起来。
Java学习过程中的总结,对于继承部分的总结-----------------------------------------------------------------------------------------------------------------------------------------------
javaeye 收集的java排序小结,希望对大家有所帮组
本资源主要描述java异常的知识,里面内容丰富,是java初学者的学习手册,java异常机制小结。
总结了一些初学者应该知道的知识 总结了一些初学者应该知道的知识 总结了一些初学者应该知道的知识
NULL 博文链接:https://kevin-wanwei.iteye.com/blog/664226
C#与java相似点和差异小结.doc,C#与java相似点和差异小结.doc,C#与java相似点和差异小结.doc
Java编程开发 Java输入语句小结.doc 学习资料 复习资料 教学资源
NULL 博文链接:https://onlyor.iteye.com/blog/1700777
1. Java基础 1.1 getPath()、getAbsolutePath()、getCanonicalPath()的区别 . . . . . . .4 1.2 file的getPath getAbsolutePath和getCanonicalPath的不同 . . . . . . .5 1.3 int String 互转的多种方法 . . . . . ....