java——关键字以及修饰属性

Posted 东木刀纹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java——关键字以及修饰属性相关的知识,希望对你有一定的参考价值。

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

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

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

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

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

 

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中的多态

编译时多态,编译时就确定了对具体方法体的调用,比如函数的重载(参数不同)
运行时多态,运行时才确定对具体方法的调用,继承中方法的覆盖(子类的方法覆盖掉父类的方法)
 

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之static关键字

对Final关键字的理解以及说明

JAVA中的四种作用域访问修饰符以及各自的关键字个特点是?

JAVA面试题 浅析Java中的static关键字

关于Java中修饰 类 , 对象, 方法,域(属性)的一些关键字

java中static与final关键字归纳总结