在java语言中,有许多关键字,他们按照不同的类别可以分为不同的关键字。
访问权限:public protected private
基本数据类型:int long byte char double float boolean short
跟类相关的:class import extends implements interface package
循环判断:if else switch while do case for
异常:try catch throw throws
其他:final static this super
在这里我们若要准确的理解各种关键字,就应该按照相应的类型下的关键字的区别和联系去记忆,这样才能更有效果。这里的话重点讲几个比较重要而且难以理解的关键字。
访问权限:
public:同一个工程下的任何类都能被访问和继承
protected:同一个包下的任何类可以被访问和被不同包下其他类继承和子类访问
默认的:同一个包下的任何类可以被访问
private:只能在自己类中使用 分别可以修饰类、方法、属性:
类:public和默认修饰都可以修饰类
比如public class Student{}
class Student{}
但是类的内部类可以定义为以上四种访问权限
方法:public protected 默认 private
属性:public protected 默认 private
方法和属性都可以用四个关键字来修饰,但是有的不是常用的,比较常用的是public private (建议是定义类的属性的时候用private,避免在程序中出现debug时难以找到问题的所在,因为属性可能会用错)。
final:
final--最终的
修饰范围:方法、属性、类、参数
当修饰类的时候:不能被继承,断子绝孙(根据final的字面意思“最终的”来理解,就是没有后来的了)。
当修饰函数的时候:子类不能重写,即该方法就只能存在父类中,子类需要调用的话,只能完完全全地实现父类中的方法。
当修饰属性时候:此属性是常量,不能重新赋值(相当于只能定义一次)
当修饰参数时候:参数变量的地址不能重新修改,如果是值传递,值也不能修改
try catch:
这是在程序中用来捕捉异常用的。
一般情况下是用try来执行一段程序,如果出现异常,系统会抛出(throws)一个异常,这时候你可以通过它的类型来捕捉(catch)它,或最后(finally)由缺省处理器来处理。用try来指定一块预防所有“异常”的程序。紧跟在try程序后面,应包含一个catch子句来指定你想要捕捉的“异常”的类型。
示例: 捕捉IO异常:
public void print(){ //创建输入流对象 try { InputStream is = new FileInputStream("C:\\Users\\asus\\Desktop"); } catch (FileNotFoundException e) { e.printStackTrace(); } }
这是由于为文件输入流中传入了一个地址,所以系统会通过try catch来捕捉异常。
throw throws:
这是在某种情况下,比如说数组越界,调用函数时传入的实参超出了一定不懂范围,则通过抛出异常使程序能运行。
throw语句用来明确地抛出一个“异常”。
示例:
throw new ArrayIndexOutOfBoundsException("超出范围");
throws用来标明一个成员函数可能抛出的各种“异常”。
经常会用到的是第二个。
static:
static--静态的
修饰范围:方法、属性、静态代码块
如果通过static修饰方法属性,那说明这个类的所有对象共有这同一个方法或者属性
static的属性和方法存储在静态空间中,只要当前类通过编译,则这个静态属性或者方法就已经初始化存在于静态空间中但是非静态属性和方法,必须通过创建对象过程才会初始化到堆内存中。
示例:
public class Student { public static void main(String[] args) { //在未创建对象时就可以调用静态方法 Student.study1(); //调用非静态方法时必须先创建对象 Student st = new Student(); st.study2(); st.study1(); } //定义静态方法 public static void study1(){ System.out.println("静态方法:大学生在图书馆上自习"); } //定义非静态方法 public void study2(){ System.out.println("非静态方法:大学生在教室上课"); } }
调用之后打印的结果是:
静态块:格式:static{}
静态块中的内容在当前类编译时候执行
注意:静态方法中只能用静态属性,不能用非静态属性
this\super:
this: 当前类的对象
1)调用当前类的其他构造函数
2)指当前对象,可以通过this调用当前对象的属性和方法
super: 当前类的父类的对象
1)调用父类的构造函数
2)指父类对象,调用父类对象的属性和方法
注意:子类的构造函数必然会调用父类构造函数,默认情况下会调用父类无参构造方法
示例:
public class Student { public void study() { System.out.println("执行了学生的学习方法"); } } // 另外有个大学生类来继承学生类 public class UnStudent extends Student{ public static void main(String[] args) { new UNStudent().study(); } public void study() { super.study(); System.out.println("执行了大学生的学习方法"); } }
输出结果为:
在这些简单的关键字的运用方面,需要经常复习,经常用用,避免在以后的编程过程中出现不必要的错误。这须就是语言的巧妙之处吧,常用常熟,融会贯通。
相关推荐
### Java并发编程:volatile关键字解析 #### 一、内存模型的相关概念 在深入了解`volatile`关键字之前,我们首先需要理解计算机内存模型的一些基本概念。在现代计算机系统中,CPU为了提高执行效率,会将频繁访问的...
### Java关键字解析 Java是一种广泛使用的面向对象编程语言,它为开发者提供了丰富的特性和功能,以简化复杂的软件开发过程。Java的关键字是预定义的保留字,在Java编程中具有特殊的含义和用途。本文将深入探讨Java...
### SQL 常用关键字解析 #### 一、DISTINCT - 实现去重查询 `DISTINCT` 是一个非常实用的关键字,它可以帮助我们在查询结果中去除重复的记录,只保留唯一的值。例如: ``` SELECT DISTINCT column_name FROM table_...
在IT行业中,关键字解析是搜索引擎优化(SEO)和网络营销策略中的关键环节,特别是在阿里巴巴国际站这样的B2B平台上。"fan白软件"可能是指一款专为阿里巴巴国际站设计的工具,用于帮助商家更有效地理解和利用关键词...
### C++中的关键字解析 #### 一、保留字与关键字 C++中存在大量预定义的标识符,这些标识符通常被称为保留字或关键字。它们具有特定的意义,并且被编译器用来识别语言结构的不同部分。例如,在C++中,“`auto`”、...
Java关键字在编程中起着至关重要的作用,它们是语言预定义的标识符,具有特定的含义,不能用于命名变量、方法、类、包或参数。本文将深入解析几个关键的Java关键字及其用法。 首先,`instanceof`关键字用于判断一个...
### Python解析URL中关键字资料 #### 知识点概述 在Web开发与数据抓取过程中,经常需要对URL进行解析,以获取其中的关键字参数。本篇内容将围绕一段用于测试目的的URL集合,深入探讨如何使用Python语言来解析这些...
#### 编译命令关键字解析 在Visual Basic编程环境中,编译命令关键字用于控制代码的编译行为。其中`#Const`用于定义编译时的常量,这允许开发者在编译期间设定不变的值,提高代码的可维护性和效率。`#IfThen#Else`...
在C语言中,关键字起着至关重要的作用,它们是编程语法的基础组成部分。下面我们将深入探讨在C语言中经常使用的几个关键字:`#define`(宏定义)、`static`(静态变量)、`const`(只读变量)和`volatile`(易变变量)以及`...
在实际应用中,确保文本或代码中不包含非法关键字是至关重要的,因为这些词可能会导致解析器或编译器无法正确解读,甚至可能触发安全漏洞,如SQL注入等。 从给定的部分内容来看,虽然大部分字符似乎是非标准的...
总的来说,关键字高亮显示是通过文本解析和特定的算法实现的,它可以提升用户的阅读体验。在实际开发中,我们需要综合考虑性能、用户体验和兼容性等因素,以实现最佳的效果。而"RichEdit"这样的组件则提供了实现这些...
在IT领域,多叉树和滑动引擎是两种重要的数据结构和算法,它们在文本处理、搜索引擎、富文本解析等方面有着广泛的应用。本篇将详细探讨这两种技术及其在实际问题中的应用。 首先,多叉树是一种特殊的树形数据结构,...
本文将全面解析`static`关键字的用途、常见误区以及在面试和笔试中可能出现的相关问题。 首先,`static`关键字主要用于声明类级别的成员,包括静态方法(`static` methods)、静态变量(`static` variables)以及...
计算机关键字汇总解析 计算机基础知识是计算机应用基础的核心部分,涵盖了计算机的发展历程、基本结构、存储程序、电子器件、微处理器、可靠性、故障排除和维护性等关键概念。 冯·诺依曼是计算机发展的奠基人,他...
本篇文章将深入解析Java中四个重要的关键字:final、static、super和this。 首先,我们来看`final`关键字。`final`在Java中扮演着不可变的角色。它可以用在三个不同的上下文中: 1. 修饰类:如果一个类被声明为`...
首先,我们需要理解关键字在网站排名中的重要性。关键字是用户在搜索引擎中输入的词或短语,用于寻找相关信息。正确地优化关键字可以帮助提升网页在搜索结果中的可见性,从而带来更多的流量。 在描述中提到的方法是...
- **洋红色**:用于显示配置文件中的重要关键字,如ACL列表、路由命令等;同时,当百分比数值位于40.00%至69.99%区间时,这些数据也将被标为洋红色。 - **青色**:主要用于突出显示各种协议名称,如BGP、OSPF等;但...
在深入探讨IAR Systems的嵌入式开发工具中,特别是针对C51编程语言的环境,了解其扩展关键字对于优化代码、提高程序效率以及更好地利用硬件资源至关重要。这些关键字超越了标准C语言的范畴,提供了额外的功能来适应...
该框架通过解析由关键字定义的测试描述文件和多种格式的数据文件,自动生成可执行的C++测试代码。具体而言: 1. **测试描述文件**:测试人员需要编写的是包含关键字的测试描述文件,每个关键字对应于测试中的一个...