前言

猪猪会不会看之前的,或者最开始一个demo的时候会有疑惑,就是代码里面类似于publicprivate等等这些是干嘛用的呀?没有关系,这一章我们就来揭开他神秘的面纱

Java 修饰符

修饰符就是定义,类、变量、方法的东东,通常放在语句的最前端,例如:

//变量
public String str = "猪猪"; 
//类
public class PigPig{

}
//方法
public String getStr(){
   return "PigPig";
}

划重点~:
Java语言提供了很多修饰符,主要分为以下两类:

  • 访问修饰符
  • 非访问修饰符

访问修饰符

Java中,可以使用访问控制符来保护对类、变量、方法和构造方法的访问。Java 支持 4 种不同的访问权限。
image.png
没事不要慌,我来给猪猪解释:

  • 默认访问修饰符-不使用任何关键字:使用默认访问修饰符声明的变量和方法,对同一个包内的类是可见的。接口里的变量都隐式声明为 public static final,而接口里的方法默认情况下访问权限为 public,通俗的来说就是在一个项目里面,都可以被引用,我们来举个栗子:
//这里定义变量的时候没有使用修饰符,其实就是默认的修饰符
String name = "猪猪";
//同上哈
boolean processOrder() {
   return true;
}
  • 私有访问修饰符-private
    说到这个private,其实设计他的目的就是为了保护一些变量、值、方法等,不让外面的人去破坏它,那么用它修饰的东东,都只能被自己的类去访问,外面的人想要访问这个变量呀或者对象的时候,只能通过getset方法来进行访问,这个我们以后在做介绍~先举个栗子:
public class PigPig {
   private int age;
   public int getAge() {
      return this.age;
   }
   public void setAge(int age) {
      this.age= age;
   }
}
  • 公有访问修饰符-public
    被声明为 public 的类、方法、构造方法和接口能够被任何其他类访问。猪猪可以理解他就是,被他修饰了的东东,谁都可以访问,可以用,举个栗子:
public String name = "猪猪";
  • 受保护的访问修饰符-protected
    受保护的这个修饰符目前,我也不是特别清楚,还有一些小模糊,等我研究明白后,专门出一章,来给猪猪讲解这个

在这里先提一下这个规则,没事猪猪不要慌,后续我们讲到继承的时候就可以理解了
访问控制和继承

  • 父类中声明为 public 的方法在子类中也必须为 public。
  • 父类中声明为 protected 的方法在子类中要么声明为 protected,要么声明为 public,不能声明为 private。
  • 父类中声明为 private 的方法,不能够被继承。

非访问修饰符

啥是非访问修饰符呢,java为了设计更多的功能,所以就诞生了非访问修饰符~
Java中的非访问修饰符有:

  • static 修饰符,用来修饰类方法和类变量。
  • final 修饰符,用来修饰类、方法和变量,final 修饰的类不能够被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,是不可修改的。
  • abstract 修饰符,用来创建抽象类和抽象方法。
  • synchronized 和 volatile 修饰符,主要用于线程的编程。
    注意:画下划线的两个涉及到后期的一些内容,所以就不在这里给猪猪展开啦,得到后面猪猪知道了多线程、抽象类的时候再来介绍~

static 修饰符

static 修饰符咱们在上篇文章中介绍过,嘿嘿,它主要用来修饰两种东西:

  • 静态变量:
    用static来修饰静态变量,静态变量也被称为类变量,举个栗子:
public static int age = 3;
  • 静态方法:
    可以使用static来修饰静态方法,静态方法可以通过该类的类名+.+方法名来进行调用,举个栗子:
public staic void PrintPigPig(){
	System.out.println("i like pig");
}

final 修饰符

  • final 变量:
    final 表示"最后的、最终的"含义啦~那么java中一个不变的量叫啥来着?常量
    final 修饰符通常和 static 修饰符一起使用来创建类常量,我们来举个栗子:
 public static final int AGE= 3;
  • final方法:
    被final修饰的方法,就是相当于被保护起来了,我的内容不能在改变了,举个栗子哈:
public final void getPigPigName(){
      System.out.println("猪猪");
    }
  • final类:
    没事猪猪,这里你可能看不懂什么是类,因为现在猪猪可能还没有类的概念,没关系,在这里就先知道,final也可以用来修饰类~

未完待续(后面的我会慢慢补充的,等猪猪知道了后面的东西,我就来进行填充哈)...

HomeWork

今天的文章就到此结束啦~~~猪猪就是要理解什么是修饰符,都是干啥的,不要死记硬背,重要的是理解哈,其实大多数都和他自己单词的意思是一样的呢~

Q.E.D.


Hello welcome to my blog