(1)一个人只要自己不放弃自己,整个世界也不会放弃你.
(2)天生我才必有大用
(3)不能忍受学习之苦就一定要忍受生活之苦,这是多么痛苦而深刻的领悟.
(4)做难事必有所得
(5)精神乃真正的刀锋
(6)战胜对手有两次,第一次在内心中.
(7)编写实属不易,若喜欢或者对你有帮助记得点赞+关注或者收藏哦~
Java SE 029 访问控制符详解
1.访问修饰符(access modifier)
解说:控制外面的类对里面的类的属性或方法能不能访问。控制权限的。
(1)public(公共的):被public所修饰的属性和方法可以被所有类访问。
(2)protected(受保护的):被protected所修饰的属性与方法可以在类内部、相同包、以及该类的子类所访问。
解说:如果这个类它的子类与当前这个类不在同一个包下面,子类也可以去访问父类的protected的属性与方法。
示例:
package com.test;
public class C
{
protected int year = 2011;
}
package com.test.test1;
import com.test.C;
public class D extends C
{
public void output(){
System.out.println(year);
}
public static void main(String [] args){
D d = new D();
d.output();
}
}
运行结果:
注意:
(3)private(私有的): 被private所修饰的属性和方法只能在该类内部使用
(4)默认的(不加任何访问修饰符):在类内部以及相同包下面的类所使用。
示例:
package com;
public class A
{
int a = 10;
}
package com.test;
import com.A;
public class B
{
public static void main(String[] args){
A a = new A();
System.out.println(a.a);
}
}
运行结果:
注意:
(1)所谓可以访问在子类中访问父类的属性与方法,实际上是子类把父类的protected的属性与方法给继承下来了,因此可以访问。
(2)可以被子类的使用,是指可以在子类的内部使用。而并非在子类里面去定义一个main方法,然后生成父类对象,然后通过父类对象去访问父类的protected成员变量,不是这样的。即可以被子类所继承下来。
(3)import导入是为了找到类,而访问修饰符是控制能不能访问类里面的属性与方法。
2.父类与子类属性与方法访问控制总结
(1)如果这个方法与属性是public的,即可以被子类所继承下来,子类可以访问父类的成员变量。子类在类的内部也可以去访问他。
(2)但是如果方法与属性是private的,子类就不会继承下来。也不会继承private的属性与方法。
(3)如果方法与属性是被protected所修饰的话,子类就可以把父类的protected的成员属性与方法一起继承过来,变成子类自己的。子类在内部也可以去访问它。
3.instanceof(谁的实例)
(1)判断某个对象是否是某个类的实例。
(2)语法形式
引用名 instanceof 类名 (接口名),返回一个boolean值。
(3)代码示例
public class InstanceofTest
{
public static void main(String[] args)
{
People people = new People();
System.out.println(people instanceof People);
}
}
class People
{
}
public class InstanceofTest
{
public static void main(String[] args)
{
People people = new Man();
System.out.println(people instanceof People);
}
}
class People
{
}
class Man extends People
{
}
结果为true,因为Man是People的子类,根据继承,子类就是父类,因此people也可以看作是People的实例。