java中包和类的导入以及修饰符(modifiers)的作用域

包和类的导入

在Java中,是使用包来组织类的,其作用是确保类的唯一性,如有可能在同一个项目中,两个不同的程序员定义了相同名字的类Animal,其各自把自己定义的Animal类放在自己的定义的包中就不会冲突了(也就是包名是不同的),为了确保包名的绝对唯一性,在项目开发中,常把公司的域名逆序后做为包名,并对不同的项目采用不同的子包(如com.baidu;cn.com.sina等就是域名逆序,cn.com.sina.project1,cn.com.sina.project2 就是不同的项目包命名).一个类可以使用所属包中的所有类,也可以访问其他包中的公有类(即public类), 而要访问另一个包中的公有类,有两种做法:

第一种是在每个类名前加完整的包名,如java.util.Date date = new Date();

另外一种就是使用import语句,如importjava.util.Date; import语句导入了类,但真正定位包中的类是编译器的工作,其实在字节码文件(以.class后缀的文件)中还是使用完整的包名来引用其他类的。

把类放入包中,就是把包名放在类源码文件第一行,如packageAnimal(可以在创建类时即指明其所在的包Myeclipse与Eclipse均有该功能);类的种类根据修饰符(modifiers)(不考虑内部类,因为只有内部类可以使用static修饰,即静态内部类,而一般的类是不能用static修饰的内部类详见《Java的成员内部类》与《成员内部类总结与静态内部类详述》两篇笔记)对类的修饰,可以确认一个类:

public class 类名{}:公共类,其可以被所有类访问,能实例化(也就是new操作);

public abstract class 类名{}:抽象类,不可以实例化;

public final class 类名{}:final类,不可继承;

class 类名{}:同一包中可以被访问;

从上可以看出,能修饰类的修饰符就是public,abstract,final,没有修饰符(default),其中abstract和final不能同时使用。(abstract与final修饰符详见之后的笔记

Java修饰符小结

(转载 http://hi.baidu.com/vnxuaqndtncrxyr/item/bf1c291898c2849c99ce335f


类修饰符

Public

可以从其他类中访问

obstract

本类不能被实例化

final

不能再声明子类

构造器修饰符(构造方法:用来描述对象的创建过程)

Public

可以从所有的类中访问

Protected

只能从自己的类和它的子类中访问

Private

只能在本类中访问

域修饰符

Public

可以从所有的类中访问

Protected

只能从本类和它的子类中访问

Private

只能从本类中访问它

Static

对该类的所有实例只能有一个域值存在,即只在内存中初始化一次,每个实例的对象所共用

transient(详细请访问:http://www.iteye.com/topic/52957

不是一个对象持久状态的一部份

Volatile

可以被异步的线程所修改

final

必须对它赋予初值并且不能修改它

局部变量修饰符

final

必须对它赋予初值并且不能修改它

方法修饰符

Public

可以从所有的类中访问它

Protected

只能从本类及其子类中访问它

Private

只能从本类中访问它

abstract

没有方法体,属于一个抽象类

final

子类不能覆盖它

static

被绑定于类本身而不是类的实例

native

该方法由其他编程语言实现

asnchronized

在一个线程调用它之前必须先给它加

访问控制符作用域

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值