javaSE-chapter10封装性

1. package关键字

  1.1 语法格式

    package 包.子包.子子包...

    (注:必须将该语句作为java文件中的第一行代码)

  1.2 包的命名

    1.2.1 包的命名需要遵循标识符规范,字母一般全部小写

    1.2.2 一般分为四到五层

        第一层:甲方公司域名的倒序 eg: com.tca

        第二层:项目名称 eg: com.tca.oa  (oa项目)

        第三层:模块信息 eg: com.tca.oa.sso (sso为单点登录模块)

        第四层:功能顶包层 eg: com.tca.oa.sso.service 

        第五层:实现类(有些功能没有实现类) eg: com.tca.oa.sso.service.impl

  1.3 类的名称

        类的名称包括简单名称和类的全限定名称(完整包名.类名)


2. import关键字

  2.1 若A类和B类不在同一包内,在A类中调用B类的方法,此时可以通过B类的全限定名来操作,但是这种操作太麻烦,

        一般,我们使用import关键字,将B类导入到A类中

  2.2 编译器会自动去java.lang包中寻找使用到的类,比如System,String等,所以它们不需要导入。

  2.3 可以使用通配符*批量导入,可以使用static静态导入,但实际开发中一般不用。


3. 封装

  3.1 封装思想

    3.1.1 将对象的状态和行为看成一个统一的整体,将二者放在一个独立的模块中(类)

    3.1.2 信息隐藏,把不需要让外界知道的信息隐藏起来,尽可能隐藏对象功能实现细节

  3.2 访问权限设置

    3.2.1 权限关键字: public protected (default)  private

    3.2.2 权限关键字的访问权限,以及如何访问        

        假定这里Class A中的非静态成员用了以上四个修饰符进行修饰,那么如何访问这些成员

        1.public: 在任何包的任何类中都可以通过A对象或A类的子类对象(没有发生复写)进行访问;

        2.protected: 在A类所在的当前包中通过A类对象或A类的子类对象(没有发生复写)进行访问 或 在A类的子类中通过super 或this(可忽略)进行直接访问, 不能在非A类所在包或A类的子类对象中进行访问;

        3.default: 在A类所在的当前所在包的任意的类中通过A类对象进行访问。

        4.private: 只能在A类中通过this(可忽略)进行访问


4. this关键字

  4.1 概念:表示当前对象,主要存在于两个位置,

    4.1.1 构造器:就表示当前创建的对象

    4.1.2 非静态方法:哪一个对象调用了该方法,this就表示哪一个对象。

  4.2 this关键字的使用

    4.2.1 解决成员变量与形参之间的二义性,这里必须使用this

public class User {
	
	private String username;

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;  //这里必须使用this
	}
	
}	

    4.2.2 同类中实例方法的互相调用,一般省略

    4.2.3 将this作为参数传递给另一个方法

    4.2.4 将this作为方法的返回值,一般用于链式编程

    4.2.5 构造器重载的互相调用,this([参数])必须要写在重载构造器的第一行

    



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值