软件包

软件包解决了两个类名字一样的问题。软件包就是一个"文件夹"。

包名的命名规范:
1、要求所有字母都小写;
2、包名一般情况下,是你的域名倒过来写。比如baidu.com,package com.baidu;

编写Test.java:

package mings; //将类防止到一个包当中

public class Test{
public static void main(String[] args){
System.out.println("Hello,package!");
}
}

  

编译包命令,点代表当前目录:

javac -d . Test.java

  

编译后会自动生成mings文件夹:

java当中的访问权限

  • public 公共权限 修饰类、成员函数、成员变量。修饰类的话,文件名和类名必须一致。 作用在于两个类在不同包中,但是想要调用的另一个类或者类的构造函数、成员变量的话,加上public后可以任意调用。
  • private 私有权限 修饰成员变量、成员函数; 就算在同一个包中,也只能在当前类中调用变量和函数。
  • default 包级别访问权限(默认) 修饰类、成员函数、成员变量。如果在同一个包中,可以任意调用。
  • protected 受保护权限。修饰成员函数、成员变量。拥有default相同的权限。特殊:跨包继承。

public > protected > default > private

下面就是一个public权限的代码。

Person.java:

package com.mings;

public class Person{
public String name;
public int age;
public void introduce(){
System.out.println(name);
} }

  

Test.java:

package com.cn.mings;

class Test{
public static void main(String[] args){
com.mings.Person p = new com.mings.Person; }
}

  

编译没有问题。但是存在一个问题就是com.mings.Person太长了。

因此可以使用导入包的方式,简化代码。

import 类名

  

修改Test.java:

package com.cn.mings;
import com.mings.Person; class Test{
public static void main(String[] args){
Person p = new Person();
p.name = "liming";
p.introduce(); }
}

  

运行后的结果:

D:\Java\code\练习九>java com.cn.mings.Test
liming

  

Java基础(十二)之包和权限访问的更多相关文章

  1. Java基础十二--多态是成员的特点

    Java基础十二--多态是成员的特点 一.特点 1,成员变量. 编译和运行都参考等号的左边. 覆盖只发生在函数上,和变量没关系. Fu f = new Zi();System.out.println( ...

  2. Java基础(十二)--clone()方法

    Clone在Java中就是用来复制对象,通过分配一个和源对象相同大小的内存空间,然后创建一个新的对象,那么他和=的区别在哪? 通过=实现对象拷贝: @Data @NoArgsConstructor @ ...

  3. java基础(十二 )-----Java泛型详解

    本文对java的泛型的概念和使用做了详尽的介绍. 概述 泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用. 什么是泛型?为什么要使用泛型? 泛型,即“参数化类型”.一提到 ...

  4. java基础十二[集合与泛型](阅读Head First Java记录)

    集合 List 知道索引顺序的集合,ArrayList.LinkedList.Vector三个子类实现了List接口   ArrayList ArrayList没有排序方法,可以用Collection ...

  5. Java实习生常规技术面试题每日十题Java基础(二)

    目录 1. JAVA 的反射机制的原理. 2.静态嵌套类(Static Nested Class)和内部类(Inner Class)的不同? 3.如何将String类型转化成Number类型. 4.什 ...

  6. Java基础十--接口

    Java基础十--接口 一.接口的定义和实例 /* abstract class AbsDemo { abstract void show1(); abstract void show2(); } 8 ...

  7. Bootstrap <基础十二>下拉菜单(Dropdowns)

    Bootstrap 下拉菜单.下拉菜单是可切换的,是以列表格式显示链接的上下文菜单.这可以通过与 下拉菜单(Dropdown) JavaScript 插件 的互动来实现. 如需使用下列菜单,只需要在 ...

  8. java基础(二章)

    java基础(二章) 一,变量 1.变量是内存中的一个标识符号,用于存储数据 2.变量命名规则 l  必须以字母.下划线 _ .美元符号 $ 开头 l  变量中,可以包括数字 l  变量中,不能出现特 ...

  9. Java基础-Eclipse第三方安装包管理工具之Maven

    Java基础-Eclipse第三方安装包管理工具之Maven 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 玩过Linux的小伙伴应该都知道yum吧,我们只要把搭建好的yum仓库配 ...

随机推荐

  1. centos8 samba

    安装dnf install -y samba samba-client开机启动systemctl enable smb立即启动systemctl start smb防火墙放行firewall-cmd ...

  2. 【HTML】html5 canvas全屏烟花动画特效

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  3. 【巨杉数据库SequoiaDB】巨杉Tech | 四步走,快速诊断数据库集群状态

    1.背景 SequoiaDB 巨杉数据库是一款金融级分布式数据库,包括了分布式 NewSQL.分布式文件系统与对象存储.与高性能 NoSQL 三种存储模式,分别对应分布式在线交易.非结构化数据和内容管 ...

  4. PPTP搭建

    一.装包 yum  -y  install   pptpd-1.4.0-2.el7.x86_64.rpm    //系统光盘不自带,需要自行下载 二.修改配置文件并启动软件 rpm    -qc    ...

  5. H3C ARP配置

    一.ARP简介 ARP(Address Resolution Protocol,地址解析协议)是将IP地址解析为以太网MAC地址(或称物理地址)的协议. 在网络中,当主机或其它网络设备有数据要发送给另 ...

  6. [SDOI2006] 仓库管理员的烦恼 - 二分图最大权匹配

    最小化代价,即最大化"本土"货物的数量 于是就是个二分图最大权匹配裸题 #include <bits/stdc++.h> using namespace std; #d ...

  7. [ZJOI2011] 最小割 - 最小割树

    最小割树裸题 建树后,以每个点为根跑DFS求出距离矩阵,然后暴力回答询问即可 #include <bits/stdc++.h> using namespace std; #define i ...

  8. 超简单的OpenGL & WebGL & Three.js介绍_1

    专业解释 什么是OpenGL OpenGL(Open Graphics Library即开放图形库或者“开放式图形库”)是用于渲染2D.3D矢量图形的跨语言.跨平台的应用程序编程接口(API). 这个 ...

  9. HandlerMethod解析

    api写HandlerMethod的作用: Encapsulates information about a handler method consisting of a method and a b ...

  10. 转: Struts2中拦截器与过滤器的区别及执行顺序

    当接收到一个httprequest , a) 当外部的httpservletrequest到来时 b) 初始到了servlet容器 传递给一个标准的过滤器链 c) FilterDispatecher会 ...