系列文章目录
java必知必会-java环境搭建
java必知必会-java开发工具安装与使用
java必知必会-java关键字、变量和常量
java必知必会-java数据类型和变量定义
java必知必会-java类和对象
java必知必会-java面向对象的三大特性
java必知必会-java继承与重写、重载
java必知必会-java构造方法与访问修饰符
java必知必会-java抽象类与接口
前言
本文介绍java常见关键字及其作用
一、super关键字
super是指向父类的指针,用于引用父类的构造方法和父类的普通方法,代码如下
public class Main {
public static void main(String[] args) {
Son son = new Son();
son.fun();
}
}
class Father{
public Father(){
System.out.println("父类的构造方法");
}
protected String name;
protected void fun(){
System.out.println("父类的普通方法");
}
}
class Son extends Father{
public Son(){
super();//调用父类的构造方法
System.out.println("子类的构造方法 ");
}
public void fun(){
super.fun();//调用父类的普通方法
System.out.println("子类的普通方法");
}
}
子类继承父类中的内容,必须先调用父类的构造方法进行初始化,故子类中所有构造方法有默认的隐式super();故父类的构造方法会先执行
如果默认的隐式super()在父类中没有对应的构造方法,那么必须在构造方法中通过this或者super的形式明确要调用的构造方法
二、final关键字
final修饰的类、变量或方法不能被继承、修改、重写,但是可以继承其他类,可以覆盖其他方法时加上final
final修饰的方法可以重载
修饰的变量称为常量,只能赋值一次,必须在创建对象前赋值、没有显式赋值时,多个构造方法都要为其赋值
修饰引用类型的变量值为对象地址值,地址值不能更改、但是地址内的对象属性值可以修改
class Father{
protected final String name = "123";//不能被重写
protected final void fun(){//不能被重写
System.out.println("父类的普通方法");
}
}
三、static
无需创建对象,独立于对象存在,多个对象共享
类的加载的时候只执行一次(性能优化),不能使用this/super
静态修饰的内容(方法、变量)存于静态区,同一个类中,静态成员只能访问静态成员,但非静态成员能访问静态成员
调用:类名.静态成员变量名\类名.静态成员方法名(参数)
静态常量public static final 数据类型 AA_BB = 值
main方法为静态方法仅为程序执行入口,不属于任何一个对象,可以定义在任意类中
public class Main {
public static void main(String[] args) {
System.out.println(Father.name);
Father.fun();
}
}
class Father{
public static String name = "张三";
public static void fun(){
System.out.println("静态方法调用");
}
}
四 、instanceof
判断某个对象是否属于某种数据类型,boolean b = 对象 instanceof 数据类型
public class Main {
public static void main(String[] args) {
Son son = new Son();
System.out.println(son instanceof Father);
}
}
class Father{}
class Son extends Father{}
总结
本文介绍了java常见关键字及其作用,如果有任何疑问欢迎私信或者评论