常见关键字

关键字概述

  1. 什么是关键字—就是被java语言赋予特殊含义的单词。
  2. 关键字的特点—组成关键字的字母都是小写

常见关键字

一.private关键字

1. private关键字的特点
a:是一个权限修饰符,私有的
b:可以修饰成员变量和成员方法
c:被修饰的成员只能在本类中访问,外界则无法访问
2. private最常见的应用
(1)把成员变量用private修饰
(2)提供对应的getXxx()和setXxx()方法

public class Phone {
    private String name;
    private int price;


    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getPrice() {
        return price;
    }

    public void setPrice(int price) {
        this.price = price;
    }

    public void call(){
        System.out.println("打电话");
    }
    public void sendMessage(){
        System.out.println("发短信");
    }
}

public class PhoneTest {
    public static void main(String[] args) {
        Phone phone=new Phone();
        phone.setName("小米");
        phone.setPrice(1000);
        System.out.println(phone.getName());
        System.out.println(phone.getPrice());
        phone.call();
        phone.sendMessage();
    }
}

二.static关键字

1. static关键字的特点
a:状态修饰符,静态的,可以修饰成员变量,也可以修饰成员方法
b:被静态修饰的成员,随着类的加载而加载,优先于对象存在
c:被静态所修饰的变量是一个共享变量,被类的所有对象共享
d:被静态所修饰的成员可以通过对象名调用也可以通过类名调用,推荐使用类名调用
2. static关键字的注意事项
(1)在静态方法里面,只能访问静态的成员,不能访问非静态的成员
原因:被静态所修饰的成员是随着类的加载而加载,出现的时机比较早;而非静态成员是随着对象的创建而创建的,对象是后来才有的;先有的不能访问后有的。
(2)静态方法里面不能出现this关键字
this代表本类的一个引用,是随着对象的创建而存在,对象是后来才有的。
3. static关键字的应用

public class MyTest {
    int a=100;
    static int b=10000;
    public static void main(String[] args) {

        test();
        MyTest myTest = new MyTest();
        myTest.test2();
        MyTest.test();
        System.out.println(myTest.a);
        System.out.println(b);
    }

    public static void test(){
        System.out.println("abc");
    }

    public  void test2() {
        System.out.println("ab2222c");
    }
}

三.this关键字

1. 为什么要有this
当我们的成员变量与局部变量相同的时候,如果我们不使用this关键字,那么会导致一个问题:就是局部变量隐藏了成员变量的问题
2. this关键字的特点
是当前类的对象引用。它代表当前类的一个对象。谁调用这个方法,那么该方法的内部this 就代表谁。
3. this关键字的应用
解决局部变量隐藏成员变量

public class MyTest {
    int num=100;
    public static void main(String[] args) {
        Dog dog = new Dog();
        dog.show(10,50);
    }
}

public class Dog {
    int num=100;
    public void show(int a,int num){
        System.out.println(a);
        System.out.println(num);
        System.out.println(this.num);
    }
}

4. this和super的区别
this代表的是本类对象的引用
super代表的是父类存储空间的标识,是父类的引用,可以操作父类的成员

public class Test6 {
    public static void main(String[] args) {
        Zi zi = new Zi();
        zi.show(1);
    }
}
class Fu{
    int num=1000;
    int b=1;
}
class Zi extends Fu{
    int num=10;
    int c=20;
    public void show(int num){
        System.out.println(num);
        System.out.println(this.num);
        System.out.println(super.num);
        System.out.println("--------------------");
        System.out.println(this.c);
        System.out.println(super.b);
    }
}

四.final关键字

1. 为什么会有final
由于继承中会有一个方法重写的现象,而有时候我们不想让子类去重写父类的方法,针对这种情况java就给我们提供了一个关键字final。
2. final关键字的特点
a.final关键字是最终的意思,可以修饰类,变量,成员方法
b.修饰类:被修饰的类不能被继承
修饰方法:被修饰的方法不能被重写
修饰变量:被修饰的变量不能被重新赋值,因为这个量变成了常量
c.final修饰局部变量
基本数据类型:其值不能被改变
引用数据类型:其地址值不能被改变

public class Test2 {
    public static void main(String[] args) {
        Zi zi = new Zi();
    }
}
class Fu {
    static {
        System.out.println("静态代码块Fu");
    }

    {
        System.out.println("构造代码块Fu");
    }

    public Fu() {
        System.out.println("构造方法Fu");
    }
}

class Zi extends Fu {
    static {
        System.out.println("静态代码块Zi");
    }

    {
        System.out.println("构造代码块Zi");
    }

    public Zi() {
        System.out.println("构造方法Zi");
    }
}
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值