Java——package和import关键字
1.8 package和import关键字
1.8.1 package
包其实就是目录,特别是项目比较大,java 文件特别多的情况下,我们应该分目录管理,在java 中称为分包管理,包名称通常采用小写。
软件包机制:
①为了解决类的命名冲突问题,在类名前加命名空间(包机制)。
②在java中使用package语句定义包.(单包,复包)。
③package语句只能出现在.java源文件的第一行。
④package定义的格式,通常采用公司域名倒叙方式。
例如:com.bjpowernode.oa.system;
以上包含义:bjpowernode公司开发oa项目,system是oa项目中其中一个模块!
package定义的全格式:公司域名倒叙.项目名.模块名;
⑤完整的类名是带有包名的。
⑥带有package语句的java源文件必须这样编译:javac -d 生成路径 java源文件路径。
⑦运行: java com.bjpowernode.javase.day05.User
|
package com.bjpowernode.javase.day05; public class User{ public static void main(String[] args){ System.out.println("User's main method execute!"); } } |
|
package com.bjpowernode.javase.day05; public class Test01{ public static void main(String[] args){ User u = new User(); System.out.println(u); //com.bjpowernode.javase.day05.User@c17164 } } |
1.8.2 import
|
package com; //import语句可以引入其他类. //import语句只能出现在package语句之下,class定义的语句之上。 //import com.bjpowernode.javase.day05.User; import com.bjpowernode.javase.day05.*; //java.lang;软件包下所有类不需要手动导入。系统自动导入. import java.util.Date; public class Test02{ //入口 public static void main(String[] args){ //User.class找不到. //User u = new User(); com.bjpowernode.javase.day05.User u = new com.bjpowernode.javase.day05.User(); System.out.println(u); //com.bjpowernode.javase.day05.User@c17164 User u1 = new User(); System.out.println(u1); Object o = new Object(); System.out.println(o); //java.lang.Object@61de33 //SUN提供的日期 Date t = new Date(); System.out.println(t); //Fri Jul 27 15:00:37 CST 2012 } } |
JDK中主要的包介绍
1.java.lang----包含一些Java语言的核心类,如String、Math、Integer、 System和Thread,提供常用功能。
2. java.net----包含执行与网络相关的操作的类和接口。
3. java.io ----包含能提供多种输入/输出功能的类。
4. java.util----包含一些实用工具类,如定义系统特性、接口的集合框架类、使用与日期日历相关的函数。
5. java.text----包含了一些java格式化相关的类
6. java.sql----包含了java进行JDBC数据库编程的相关类/接口
7. java.awt----包含了构成抽象窗口工具集(abstract window toolkits)的
多个类,这些类被用来构建和管理应用程序的图形用户界
面(GUI)。
8. java.applet----包含applet运行所需的一些类。
总结
1.面向对象思想的落地法则一:
①设计类,并设计类的成员(成员变量&成员方法)
②通过类,来创建类的对象(也称作类的实例化)
③通过“对象.属性” 或“对象.方法”来调用,完成相应的功能
2.创建的多个对象,彼此各自拥有一套类的属性。
当对其中一个对象的属性进行修改时,不会影响到其他对象的属性值。
|
public class Zoo{ public static void main(String args[]){ Animal xb=new Animal(); Animal xh=new Animal(); xb.legs=4; xh.legs=0; System.out.println(xb.legs); //4 System.out.println(xh.legs); //0 xb.legs=2; System.out.println(xb.legs); //2 System.out.println(xh.legs); //0 } } |
3.类的属性(成员变量)
成员变量vs局部变量
相同点:
①遵循变量声明的格式: 数据类型 变量名 = 初始化值
②都有作用域
不同点:
①声明的位置的不同 :
成员变量:声明在类里,方法外;局部变量:声明在方法内,方法的形参部分,代码块内
②关于修饰符:
成员变量的修饰符有四个:public private protected 缺省;
局部变量没有修饰符,与所在的方法修饰符相同。
③初始化值:一定会有初始化值。
成员变量:如果在声明的时候,不显式的赋值,那么不同数据类型会有不同的默认初始化值。
byte short int long ==>0
float double ==>0.0
char ==>空格
boolean ==>false
引用类型变量==>null
局部变量:一定要显式的赋值(局部变量没有默认初始化值)。
④二者在内存中存放的位置不同:
成员变量:存在于堆空间中;局部变量:栈空间中 。
4.关于变量的分类:
①按照数据类型的不同:基本数据类型(8种)& 引用数据类型
②按照声明的位置的不同:成员变量 & 局部变量
5.类的方法:提供某种功能的实现
①实例
|
public void eat(){//方法体} public String getName(){} public void setName(String n){} |
格式:权限修饰符 返回值类型(void:无返回值/具体的返回值) 方法名(形参){}
②关于返回值类型
void:表明此方法不需要返回值
有返回值的方法:在方法的最后一定有return + 返回值类型对应的变量
记忆:void 与return不可以同时出现一个方法内。像一对“冤家”。
③方法内可以调用本类的其他方法或属性,但是不能在方法内再定义方法!


6.类的初始化的内存解析
内存划分的结构:理解的基础上,学会基本的创建的类的对象在内存中的运行。
①栈(stack):局部变量 、对象的引用名、数组的引用名
②堆(heap):new 出来的“东西”(如:对象的实体,数组的实体),含成员变量
③方法区:含字符串常量
④静态域:声明为static的变量
7.面向对象思想的落地法则二:(封装性的思想)
①将类的属性私有化
②提供公共的方法(setter & getter)来实现调用
Java——package和import关键字的更多相关文章
- JAVA package与import机制
JAVA package与import机制 http://files.cnblogs.com/files/misybing/JAVA-package-and-import.pdf import org ...
- Java中的package和Import关键字的作用
一.package关键的作用 1.包的概念 package翻译为包,本质上就是一个文件夹,通过包组织项目结构的过程,就是通过包对应的文件夹管理.java和.class文件的过程. 2.包的作用 通过包 ...
- 构造器与this、package、import关键字的使用
构造器一.构造器的作用: 1.创建对象 2.初始化对象的信息 二.说明: 1.如果没有显式的定义类的构造器的话,则系统默认提供一个空参的构造器 2.定义构造器的格式:权限修饰符 类名(形参列表){} ...
- JAVA - package与import解析(一)
一.为什么要引入package和import?这个问题和c++中引入命名空间是一样的,也是为了解决重名问题.java通过包机制来解决重名问题,也就相当于给重名的代码加一系列前缀,从而达到唯一标识的作用 ...
- java package and import
1.Package Package类的主要作用是解决命名冲突.package中所存放的所有文件,一般分一下就分这三种 1,java程序源文件,扩展名为.java. 2,编译好的java类文件,扩展名为 ...
- Java package和import语句
Java中的package和import语句 如果你想让其他人访问你的类,你一定要把你写的类放到正确的子目录下. 在Java里,对于位于包中的类是这样管理的: Java编译器把包对应于文件系统的目录管 ...
- Java——package与import
[package] <1>为了解决类的命名冲突问题,Java引入包(package)机制,提供类的多重类命名空间. <2>package作为源文件的第一条语句(缺省时指定为 ...
- 《Java编程思想》读书笔记-基本规范、注释、static关键字、import关键字
扫一扫加我的微信公众号,和我一起打好Java的基础 本文作为构建第一个Java程序的番外篇二,主要跟大家伙儿从浅层次的探讨下Java中的关键字import和static,此外为了让我们的代码可读性更强 ...
- 如何理解和使用Java package包
Java中的一个包就是一个类库单元,包内包含有一组类,它们在单一的名称空间之下被组织在了一起.这个名称空间就是包名.可以使用import关键字来导入一个包.例如使用import java.util.* ...
随机推荐
- AtCoder Grand Contest 001F Wide Swap
解法参考这位大佬的:https://www.cnblogs.com/BearChild/p/7895719.html 因为原来的数组不好做于是我们想反过来数组,根据交换条件:值相邻且位置差大于等于k, ...
- js-打印九九乘法表
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- phpStudy的安装和配置
一,下载工具 官网:http://www.phpstudy.net/,选择自己要安装的版本 二.多个站点和域名配置 1.打开phpStudy=>点击“其它选项菜单”=>点击“站点域名管理” ...
- 二叉堆 与 PriorityQueue
堆在存储器中的表示是数组,堆只是一个概念上的表示.堆的同一节点的左右子节点都没有规律. 堆适合优先级队列(默认排列顺序是升序排列,快速插入与删除最大/最小值). 数组与堆 堆(完全二叉树)(构造大顶堆 ...
- php-验证码类-PDO类-缩略图类
Verify.class.php 验证码类 <?php class Verify{ const VERIFY_TYPE_NUM=1; const VERIFY_TYPE_EN=2; const ...
- 模数循环节——cf547A
campjls讲过模数循环节的问题,今天做cf才做到这类题 h1->a1的长度为len1,a1->a1的长度为cir1 h2->a2的长度为len2,a2->a2的长度为cir ...
- SVN——将VS项目提交至SVN时,怎样忽略bin和obj目录中的文件
方法一: 通过设置SVN的Global ignore pattern值. 在设置了全局排除obj bin文件夹之后,需commit提交该项目,以使svn服务器应用该排除忽略 方法二: 具体实现 在解决 ...
- centos7 安装telent和telnet-server
安装centos7 无telnet命令 先检查CentOS7.0是否已经安装以下两个安装包:telnet-server.xinetd.命令如下: rpm -q telnet-server rpm -q ...
- Go语言TCP Socket编程
Golang的主要 设计目标之一就是面向大规模后端服务程序,网络通信这块是服务端 程序必不可少也是至关重要的一部分.在日常应用中,我们也可以看到Go中的net以及其subdirectories下的 ...
- Openstack组件部署 — Nova_Install and configure a compute node
目录 目录 前文列表 Prerequisites 先决条件 Install and configure a compute node Install the packages Edit the etc ...