1. java中的修饰属性(public,private,protect,default)

public:java中访问限制最宽的修饰符。被其修饰的类,属性以及方法不仅可以跨类访问,而且可以跨包(package)访问

private:权限限制最窄的修饰符。被其修饰的类,属性以及方法只能被该类的对象访问,子类不能访问,更不能跨包访问

protect:介于public和private之间。被其修饰的类,属性以及方法只能被类本身的方法以及子类访问,即使子类在不同的包中也可以访问

default:默认访问修饰符,只能在一个包中进行访问

类的访问规则

同一个包中的其他类               不同包中的其他类

public修饰的类                     允许                                        允许

缺省修饰的类                       允许                                      不允许

属性和方法的访问规则

同一个包中的类           不同包中的类             类内

所隶属的类被public修饰         private                                                                                        允许

protected                     允许                                                        允许

缺省                           允许                                                        允许

public                          允许                            允许                     允许

所隶属的类被缺省修饰          private                                                                                          允许

protected                     允许                                                         允许

缺省                           允许                                                         允许

public                          允许                                                         允许

2. java中的关键字static

(1) static 修饰静态变量或者全局变量(编译时就开辟了空间,且只有一个,可用来做全局变量,可通过类名访问),其他的变量都叫做实例变量。

(2) static 修饰方法,表示整个类的方法,不需要创建对象来调用,可以通过类名来调用,例如Collections和Arrays(数组的操作)整个都是static修饰的方法。不是static修饰的方法必须先new一个对象,才能调用。另外,static方法中只能调用static方法。 public static void main(String[] args),main必须用static修饰。

(3) static 静态代码块,类中独立于成员变量和成员函数。用来初始化全局的变量,且只会比执行一次。

(4) 静态内部类:只能访问外部类的静态成员变量和静态方法。

3. java中的关键字final(终极修饰符)

(1) 修饰基本的数据类型,可以认为这些数据是常量,值是不可以再改变的

(2) 修饰其他类的对象,该数据和其指向的对象之间的绑定关系是不可更改的,而对象内部的属性是可以被更改的

(3) 被final修饰的方法是不可以被子类覆盖的,但final修饰的方法可以被子类重载(不可覆盖,可被重载),可以被继承

(4) final修饰的类不能被继承,且其中的方法也一定是final方法(默认),不会再有子类

(5) 常用作 static final,因为final指定的属性要么取值不可更改,要么绑定关系不可更改,所以加上final可以节省内存

(6) final不能修饰构造方法,因为子类默认使用父类的构造方法

Java是从C++发展而来的,C++中,一个类可以同时继承多个父类,但在java中,类只能单继承

4. java中的关键字finally

finally修饰的代码块一定会执行,在try和catch模块中return之前需要先执行finally。

try{}

catch(){}

catch(){}

catch(){}

finally{}

多个catch来进行捕获,finally中写入最终要执行的语句,无论异常是否发生,都会执行finally中的语句

5. java中的多态

编译时多态,编译时就确定了对具体方法体的调用,比如函数的重载(参数不同)

运行时多态,运行时才确定对具体方法的调用,继承中方法的覆盖(子类的方法覆盖掉父类的方法)

6. finalize()

垃圾回收器要回收对象的时候,首先就会调用这个类的finalize()方法,finalize()就相当于一个析构函数一样

纯java编写的class不需要重新覆盖这个方法,因为Object已经实现了一个默认的

不过如果C++编写的类的话,需要重新覆盖这个默认的函数

调用的三种情况

(1) 被gc回收时调用

(2) 程序退出时,每个对象调用一次finalize方法

(3) 显式地调用finalize方法

7. this

当前对象的一个引用

调用当前对象的属性和方法

一个类中一个构造方法调用另一个构造方法时,使用this

方法返回当前正在讨论的对象时,可以采用return this的形式

java.lang.Object类:所有类的父类,java中所有的类都是继承于Object类

public boolean equals(Object obj):  判断两个对象一样,返回true,只有两个对象指向同一个对象时,才会返回true

public String toString(): 各个类可以根据自己的需求来覆盖该类实现字符串的输出

属性的隐藏:子类中出现和父类同名属性的现象,这个时候调用子类函数处理子类的属性,调用父类函数处理父类的属性

方法的覆盖:子类中定义了和父类中具有相同方法头方法的现象

在继承中,先调用父类的构造方法,然后调用子类的构造方法

super关键字:可以直接调用父类中被隐藏的属性和方法

super(实参): 调用父类的构造方法

super.父类属性: 调用父类的属性(非隐藏属性可以直接使用,不需要super)

this 和 super不能再static修饰的方法内使用

对象instanceof类名:判断对象是不是某个类的实例

java 修饰关键字_java——关键字以及修饰属性相关推荐

  1. java修饰类的关键字_JAVA中的修饰关键字

    今天我们来说说JAVA中的修饰关键字. 常用的有: 1.final 关键字 修饰成员变量:a. 必须初始化值. b. 被fianl修饰的成员变量赋值,有两种方式:1.直接赋值 2.全部在构造方法中赋初 ...

  2. java程序处理ibitis 关键字_java关键字总结

    java关键字总结 关键字指的就是电脑语言中事先定义好,有其独特意义的标识符,专门提供给电脑语言识别的词语,所以它不能作为变量名.方法名.类名.包名或参数名等等. 在java中,总共有51个关键字,2 ...

  3. java volatile 用法_java关键字volatile用法详解

    volatile关键字想必大家都不陌生,在java 5之前有着挺大的争议,在java 5之后才逐渐被大家接受,同时作为java的关键字之一,其作用自然是不可小觑的,要知道它是java.util.con ...

  4. java foreach多线程_java关键字(一)

    原子操作 (1)除long和double之外的基本类型的赋值操作过程 (2)引用reference的赋值操作过程 (3)java.concurrent.Atomic.*包中所有类的一切操作 注释:lo ...

  5. java关键字_Java关键字

    java关键字 Java keywords are the reserved words that are used by the Java compiler. These keywords have ...

  6. java as关键字_Java 关键字专题

    总览 Java 语言中有 50 个关键字,这些关键字不能用作标识符,如下图所示(来自 jls8) 其中关键字 const 和 goto 是预留的,现在无法使用,并且在程序中出现会是编译器产生错误信息. ...

  7. java的修饰符_java默认的修饰符是什么

    默认什么都不加,就是default(不用把default写出来). 意思就是只能由跟这个类在同一个包中的类来访问,比private限制更少,但比protected限制更多.' Java访问修饰符包括p ...

  8. java默认修饰符_java默认的修饰符是什么

    默认什么都不加,就是default(不用把default写出来). 意思就是只能由跟这个类在同一个包中的类来访问,比private限制更少,但比protected限制更多.' Java访问修饰符包括p ...

  9. java class 关键字_java关键字及其作用

    一. 关键字总览: 访问控制 private protected public 类,方法和变量修饰符 abstract class extends final implements interface ...

  10. java outer关键字_Java关键字

    Java关键字 Java关键字是编程语言里事先定义的,有特别意义的单词,Java语言中所有的关键字都是小写的英语单词.Java的关键字对Java的编译器有特殊的意义,它们用来表示一种数据类型,或者表示 ...

最新文章

  1. 如何将C# 7类库升级到C# 8?使用可空引用类型
  2. EDM数据营销概念简要介绍
  3. 软件Trimmomatic
  4. 今日头条 Go 建千亿级微服务的实践
  5. linux添加x权限,Linux 7 的 rc.local 文件需要 添加 +x 权限才会自动执行
  6. DCMTK:读取DICOM图像,添加一个Curve并将其写回
  7. 第06讲:多路加速,了解多进程基本原理
  8. C++之explicit关键字使用总结
  9. Tensorflow 获取model中的变量列表,用于模型加载等
  10. java 运算符的程序_【Java】运算符
  11. 基于PHP的汉服文化交流平台 毕业设计-附源码240903
  12. matlab 伽马校正曲线,【图像处理知识复习】02伽马校正matlab,C++实现
  13. 微信小程序获取access_token报错errcode: 40125,errmsg: invalid appsecret
  14. 蓝桥杯2014年(第5届)省赛b组c/c++ 史丰收速算
  15. win10计算机方差,标准差计算工具
  16. java excel 导出加密
  17. Context-Transformer: Tackling Object Confusion for Few-Shot Detection(AAAI20)
  18. nodejs获取本地IP地址
  19. Error running ‘JeeplusWebApplication‘: Command line is too long. Shorten command line for JeeplusWeb
  20. Leetcode算法——537、复数乘法

热门文章

  1. 阶段3 3.SpringMVC·_05.文件上传_2 文件上传之传统方式上传代码回顾
  2. 获取URl后的查询参数
  3. Linux上层应用--git独奏
  4. JS调用asp.net后台方法:PageMethods
  5. 正确率、召回率和F值
  6. 正则表达式的几种字符判断(包括数字,字母组合等)
  7. 关于如何在vs 2005中使用sa用户登录的问题(即在vs 2005中SQL 2005的深层使用)
  8. 使用Spring实现AOP(XML+注解)
  9. 移动端数据爬取和Scrapy框架
  10. 使用el-checkbox实现全选,点击失效没有反应 1