第1节修饰符

  包的概述和使用

  其实就是文件夹

  作用:对类进行分类管理

  包的定义格式

  • 格式:package 包名;(多级包用.分开)
  • 范例:package com.itheima;

  带包的类编译

  手动建包 --> javac 类名.java --> java com.itheima.包名(com和itheima文件夹要手动会创建,并且把.class文件放到itheima文件夹下)

  自动建包 -->java -d . 包名.java --> java com.itheima.包名

  前提 创建的程序里开头要加上 package com.itheima;

  

导包

  导包的概述和使用

  使用不同包下的类时,使用的时候要写类的全路径,写起来太麻烦了

  为了简化带包的操作,Java就提供了导包的功能

  导包的格式

  • 格式:import 包名;
  • 范例:import com.itheima.Teacher;

  

修饰符

  修饰符的分类

  • 权限修饰符
  • 状态修饰符

  权限修饰符

修饰符 同一个类中

同一个包中子类无关类

不同包的子类

不同包的无关类

private      
默认    
protected  
public

  

 

 

 

 

 

 

 

final修饰局部变量

package itheima_03;

public class Student {
    public int age=20;
}
Student
package itheima_03;

public class FinalDemo {
    public static void main(String[] args) {
        //final修饰基本类型变量
        final int age=20;
//        age=10;
        System.out.println(age);

        //final修饰引用类型变量
        final Student s=new Student();
        s.age=100;
        System.out.println(s.age);

//        s=new Student();
    }
}
  • 变量是基本类型:final修饰指的是基本类型的数据值不能发生改变
  • 变量是引用类型:final修饰指的是引用类型的地址值不能发生改变,但是地址里面的内容是可以发生改变的

 

static

  static关键字是静态的意思,可以修饰成员方法,成员方法

  static修饰的特点

  • 被类的所有对象共享  

    这也是我们判断是否使用静态关键字的条件

  • 可以通过类名调用

    当然,也可以通过对象名调用

    推荐使用类名调用

package itheima_04;

public class Student {
    public String name;
    public int age;
//    public String university;
    public static String university;

    public void show(){
        System.out.println(name+","+age+","+university);
    }
}
package itheima_04;
/*
* 测试类
* */
public class StudentDemo {
    public static void main(String[] args) {

        Student.university="青岛大学";

        Student s1=new Student();
        s1.name="曹巧梦";
        s1.age=30;
//        s1.university="青岛大学";
        s1.show();

        Student s2=new Student();
        s2.name="方宾";
        s2.age=33;
//        s2.university="青岛大学";
        s2.show();
    }
}

 

static访问特点

  非静态的成员方法

  • 能访问静态的成员变量
  • 能访问非静态的成员变量
  • 能访问静态的成员方法
  • 能访问非静态的成员方法

  静态的成员方法

  • 能访问静态的成员变量
  • 能访问静态的成员方法

  总结成一句话就是:静态成员方法只能访问静态成员

public class Studdent {
    //非静态成员变量
    private String name="曹巧梦";
    //静态成员变量
    private static String university="青岛大学";

    //非静态成员方法
    public void show1(){}

    //非静态成员方法
    public void show2(){
        System.out.println(name);
        System.out.println(university);
        show1();
        show3();
    }

    //静态成员方法
    public static void show3(){}

    //静态成员方法
    public static void show4(){
//        System.out.println(name);
        System.out.println(university);
//        show1();
        show3();
    }
}

 

posted @ 2021-02-20 23:47  Testtext  阅读(58)  评论(0)    收藏  举报