think in java第五章笔记

1.默认是有好的。这意味着当前包内的其他所有类都能访问"友好的"成员,但对包外的所有类来说,这些成员却是"私有的",外界不得访问。

2.变成一个"友好"成员,方法是舍弃所有访问指示符,并将其类置于相同的包内。这样一来,其他类就可以访问成员。

3.如果不将一个"."作为classpath的一部分使用,java就不会考虑当前的目录。

4.

package c05.dessert;

public class Cookie {
	public Cookie() {
		System.out.println("Cookie constructor!");
	}
	void _foo() {
		System.out.println("foo");
	}
}
import c05.dessert.*;
public class Dinner() {
	public Dinner() {
		System.out.println("Dinner constructor");
	}
	
	public static void main(String[] args) {
		Cookie c = new Cookie();
		x._foo(); //can't access
	}
}
foo()成员不可在Dinner.java内访问,因为foo()只有在dessert包内才是友好的。

5.private关键字意味着除非那个特定的类,而且从那个类的方法里,否则没有人能够访问那个成员。同一个包内的其他成员不能访问private成员。

class Sundate {
	private Sundate() {
		
	}
	
	static Sundate makeASundate() {
		return new Sundate();
	}
}

public class IceCream {
	public static void main(String[] args) {
		Sundate x = Sundate.makeASundate();
	}
}
由于默认构建器是唯一获得定义的,而且它的属性是private,所以可以防止对这个类的继承。

6.若新建一个包,并从另一包内的某个类里继承,则唯一能够访问的成员就是原来那个包的public成员。当然,如果在相同的包里进行继承,那么继承获得的包能够访问所有"友好"的成员。

7.如果不针对类的访问设置一个访问指示符,那么它会自动默认为友好的。这意味着那个类的对象可由包内的其他类创建,但不能由包外创建。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值