Java访问权限原理与用法详解

2020-02-12 12:02:21于丽

本文实例讲述了Java访问权限原理与用法。,具体如下:

构造者模式思想

进行初始化,解决了多个构造器重载,构造器参数过多记不住的情况。

package day7;//声明一个程序包
class Employee{
  private String name;
  private int no;
  private int age;
  private String sex;
  private String address;
  //alt + shift + s
  
  public int getNo() {
    return no;
  }
/*  public Employee() {
  }*/

  public Employee setNo(int no) {
    this.no = no;
    return this;
  }
  public String getName() {
    return name;
  }
  public Employee setName(String name) {
    this.name = name;
    return this;
  }
  public int getAge() {
    return age;
  }
  public Employee setAge(int age) {
    this.age = age;
    return this;
  }
  public String getSex() {
    return sex;
  }
  public Employee setSex(String sex) {
    this.sex = sex;
    return this;
  }
  public String getAddress() {
    return address;
  }
  public Employee setAddress(String address) {
    this.address = address;
    return this;
  }
/*  public Employee(String name, int no, int age, String sex, String address) {
    this.name = name;
    this.no = no;
    this.age = age;
    this.sex = sex;
    this.address = address;
  }*/
  public void show() {
    System.out.println(no+","+name+","+age+","+sex+","+address);
  }
}
public class TestEmployee {

  public static void main(String[] args) {
/*    Employee tom = new Employee("Tom",12,33,"男","上海");
    tom.show();*/
    /*构造者模式思想 :进行 初始化。解决了 多个构造器重载 ,构造器 参数过多 记不住的情况*/
    Employee tom = new Employee().setNo(11).setAddress("北京").setAge(33).setSex("男").setName("Tom");
    tom.show();
  }

}

package day7;//声明一个程序包,必须放在文件的第一行

层次结构

package 父包[.子包.······];
包名:小写字母;通常是域名反转.部门名.项目名

包的好处

1.管理类和接口
2.防止命名冲突
3.封装,通过权限的控制,更好的

不同程序包下的类的方法访问方式

1.导入程序包

import b.Exam2;//导入b包下的类型Exam2
import b.*;//不能导入子包
import b.c.Exam3;//导入子包下的类型

2.用完全限定命名的方式

b.Exam2 e2 = new b.Exam2();

注意:两个包下有相同的类型,必须用完全限定命名的方式进行。

访问修饰符

Java将类成员的可见度分为四个种类:

创建类的时候只有两种:public和默认

static

static是一个修饰符
应用:可以用于修饰属性,方法,块,类
静态变量

class 类名{
//静态成员变量,类变量
public static 数据类型 变量名;
}